标签归档:Little_Endian

Big_Endian和Little_Endian的说明

    谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用Big_Endian方式存储数据,而x86系列则采用Little_Endian方式存储数据。那么究竟什么是Big_Endian,什么又是Little_Endian呢?

    其实Big_Endian是指低地址存放最高有效字节(MSB),而Little_Endian则是低地址存放最低有效字节(LSB)。

    用文字说明可能比较抽象,下面用图像加以说明。比如数字0x12345678在两种不同字节序CPU中的存储顺序如下所示:

Big_Endian

  低地址                                             高地址

  -----------------------------------------

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  |      12      |       34     |      56       |      78     |

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Little_Endian

  低地址                                             高地址

  -----------------------------------------

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  |      78      |       56     |      34       |      12     |

  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

    从上面两图可以看出,采用Big_Endian方式存储数据是符合我们人类的思维习惯的。