一、什么是大小端?
大小端是指数据在存储器中的存放顺序。
大端(big-endian)模式:是将数据的高字节存放在内存的低地址中。
而小端(little-endian)模式:是将数据的高字节存放在内存的高地址中。
例如,对于一个32位的整数0x12345678,其最高有效字节(msb)为0x12,最低有效字节(lsb)为0x78。在内存中有两种可能的存放方式(假设从地址0x4000开始存放):
- 大端模式:内存中存放顺序为0x12, 0x34, 0x56, 0x78。
- 小端模式:内存中存放顺序为0x78, 0x56, 0x34, 0x12。
下面我将模拟大小端在内存中存储的场景(我们将0x11223344放在内存中,地址是假设的)
大端存储模式:
小端存储模式:
注意:读取数据的方式都是从低地址往高地址读取<