单词地址和内存地址有什么关系?例如,我有一台32位的机器。地址是4跳还是1跳?下列哪一项是正确的?
0x100: 0x 1111 2222
0x104: 0x 3333 4444
0x100: 0x 1111 2222
0x101: 0x 3333 4444如果跳到4,我可以使用0x101访问11,0x102来访问22吗?
发布于 2015-10-14 08:31:19
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 0x02https://stackoverflow.com/questions/33117249
复制相似问题