字节序:多字节类型的数据在存储时的顺序
在设计计算机系统的时候,有两种处理内存中数据的方法。Big Endian(大端、大尾)和Little Endian(小端、小尾),具体如下:
一种叫为little-endian,即先存低位字节,再存高位字节。
存放在内存中最低位的数值是来自数据的最右边部分(也就是数据的最低位部分)。比如一个16进制数字0x12345678,在内存存放的方式如下:
值 | 0111,1000 | 0101,0110 | 0011,0100 | 0001,0010 |
地址 | 100 | 101 | 102 | 103 |
另一种称为big-endian,正好相反,即先存高位字节,再存低位字节。这种方式取出来的数值顺序
存放在内存中最低位的数值是来自数据的最左边边部分(也就是数据的最高为部分)。比如一个16进制数字0x12345678,在内存存放的方式如下:
值 | 0001,0010 | 0011,0100 | 0101,0110 | 0111,1000 |
地址 | 100 | 101 | 102 | 103 |