如何在汇编Intel x86中基于Endianness编写

时间:2017-08-01 19:14:55

标签: assembly intel endianness

执行movl 100,%eax后,EAX的价值是多少?

Endianness

如果机器是小端的? (我朋友的回答)

  

0x00 0x00 0x00 0x11

我的想法:

0x44332211? Also, does those 0x matter or can I just do one like this?

对于Big Endian :(朋友的回答)

  

0x11 0x00 0x00 0x00

在这里,我认为:

0x11223344

1 个答案:

答案 0 :(得分:5)

eax是一个x86寄存器,所以我们讨论的是x86架构,它是小端的。

在little-endian架构上从包含字节0x11,0x22,0x33,0x44的存储单元加载32位寄存器将导致该寄存器具有值0x44332211。这就是小端所指的意思:反直觉的方式。