簡體   English   中英

內存地址 - dos程序集x86

[英]memory address - dos assembly x86

在此輸入圖像描述

這是一個用於x86處理器的dos-assembly中的簡單程序。 這是一個簡單的helloworld程序。

我沒有提到的是圖像中下面的成功內存地址。 該程序似乎從地址0100開始,十六進制為256.下一個地址是258.差異似乎是2個字節。 指令(操作碼+地址)是2個字節嗎?

然后再往下 - mov dx指令似乎占用3個字節(0117 - 011A),而mov ah指令占用2個字節。

我認為指令(操作碼+地址)應占用內存中相同數量的字節。 但顯然我不明白這一點

是的,x86是一個具有可變機器代碼大小的架構。 命令的大小可以從1字節到大於10並且解碼規則非常復雜。

以下是x86編碼/解碼的介紹 有關詳盡的參考,請使用“ 英特爾軟件開發人員手冊” ,但它主要關注32位和64位模式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM