簡體   English   中英

字和內存地址

[英]Word and memory address

字地址和內存地址有何關系? 例如,我有一台32位計算機。 地址是跳4還是跳1? 以下哪一項是正確的?

0x100: 0x 1111 2222
0x104: 0x 3333 4444

0x100: 0x 1111 2222
0x101: 0x 3333 4444

如果跳4,我可以使用0x101訪問11,使用0x102訪問22嗎?

X86可以尋址幾乎位於任何地址的字節,字和雙字(請參閱LES / LDS / LSS)。 更具體地說,IA中最小的可尋址單元是一個字節; 該體系結構為小字節序,單詞未按單詞大小對齊。 在x86上,限制適用於跨段的內存地址:嘗試訪問CS / ES / SS / DS / FFFF中的字會導致異常。

總結一下:

0x100: 01 02 03 04  <-- on 32-bit architecture (386+) contains 0x04030201
0x104: 05 06 07 07

The double word located at address 0x101 contains 0x05040302.
The 16-bit word located at address 0x101 contains 0x0302 and
The byte at 0x101 contains 0x02

暫無
暫無

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

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