这篇介绍一下内存中存放数据的两种模式:大端存储(或大端模式,Big-Endian) & 小端存储(或小段模式,Little-Endian),这两种存储模式在通信或者socket编程里面可能用的比较多
如有侵权,请联系删除,如有错误,欢迎大家指正,谢谢
大端存储(Big-Endian)
数据的高字节存储在低地址中,数据的低字节存储在高地址中 如:
int
应用:C51是大端存储;socket编程中网络字节序一般是大端存储
小端存储(Little-Endian)
数据的高字节存储在高地址中,数据的低字节存储在低地址中 如:
int
应用:x86结构、ARM和DSP都是小端存储
测试
进行大小端存储测试主要有两种方法,一种是通过强转,另一种是联合 强转测试
int
可以查看p[0], p[1], p[2], p[3]的数据判断大小端存储
联合测试
union
可以输出c[0],c[1],c[2],c[3]可根据输出判断是大端还是小端存储