特定的大端小端表示0x12345678?

时间:2013-01-08 23:03:41

标签: arm

mem32 [& 100] =& 12345678如果使用big-endian寻址什么是mem8 [& 101]?

我得到答案56,这是我的推理;

在我的理解中;在大端系统中,最重要的字节首先存储在存储器中,即:。

0x100 0x101 0x102 0x103
78    56    34    12

但"正确"答案是34。

有人可以解释原因吗?/告诉我答案是错的?

编辑:我意识到自己的错误。有一刻我忘了左边的数字是最重要的!

2 个答案:

答案 0 :(得分:0)

对于32位值0x1234567812是最重要的字节,这首先出现在大端系统上,然后是3456,{ {1}}。

Big endian:

78

Little endian:

0x100 12
0x101 34
0x102 56
0x103 78

答案 1 :(得分:0)

你得到了错误的方法:

0x100 0x101 0x102 0x103
78    56    34    12

这是BIG端的0x78563412,或LITTLE端的0x12345678。

BIG端的32位值0x12345678为12 34 56 78