字节序
字节序大小端等
高字节:最右边的字节。
1 位序和字节序
无论大端CPU还是小端CPU,一定是先收发MSB,再收发LSB。
1.1 MSB
MSB:Most Significant Bit/Byte,最高有效位/字节
对于数据 0b1001_0100_1011_0100
不管是大端还是小端,MSB都为0b1/0b1001_0100。
1.2 LSM
LSM:Last Significant Bit/Byte,最低有效位/字节
对于数据 0b1001_0100_1011_0100
无论是大端还是小端,LSM都为0b0/0b1011_0100。
2 大小端
2.1 大端
大端中,数据的低位(最左边)存放在低地址(最左边)中。MSB是低地址。计算机从低地址开始读取。
对于数据 0x01234567来说:
Byte0[0:7] | Byte1[8:15] | Byte2[16:23] | Byte3[24:31] |
---|---|---|---|
0x01 | 0x23 | 0x45 | 0x67 |
2.2 小端
小端中,数据的低位(最左边)存放在高地址(最右边)中。MSB是高地址。计算机从高地址开始读取。
对于数据 0x01234567来说:
Byte0[31:24] | Byte1[23:16] | Byte2[15:8] | Byte3[7:0] |
---|---|---|---|
0x67 | 0x45 | 0x23 | 0x01 |