大端和小端的 32 位整数表示法

问题描述 投票:0回答:1

我有一本教科书上写着:

重要的是要理解,在大端和小端系统中,数值为 6 的 32 位整数由最右边(低位)3 位中的位 110 表示。一个字和最左边 29 位中的零。

这个准确吗?

cpu-architecture endianness
1个回答
0
投票

确实如此,如果您有

32-bit
数据类型。位
xxxx....110
将永远是
6

对于小端和大端之间的内存表示(字节级)而言,情况并非如此。在小端字节序中,LSB 字节在前,MSB 在后。

想象一个 32 位数字,在

uint32_t
变量中,它保存诸如
b1<<24 | b2<<16 | b3<<8 | b4
之类的值,其中
bx
是一个字节。

  • 在大端系统中,内存将如下所示:
    b1,b2,b3,b4
  • 在小端系统中,内存将如下所示:
    b4,b3,b2,b1
© www.soinside.com 2019 - 2024. All rights reserved.