大小端模式

  https://www.cnblogs.com/little-white/p/3236548.html

一 大端模式就是高位存在低地址(看着顺序一致),例如0X1234,内存地址是0X4000的话,0x4000=0x12;0x4001=0x34;

大端模式一般存在网络协议和MODBUS(先发高字节再发低字节)等中,符号位的判定固定为第一个字节,容易判断正负;C51也是大端模式。

小端模式常存在于处理器中,如ARM中,强制转换数据不需要调整字节内容,如果要进行MODBUS打包数据则要进行高低字节交换。

#define BigtoLittle16(A)   (( ((uint16)(A) & 0xff00) >> 8) | (( (uint16)(A) & 0x00ff) << 8))或者用专门的汇编指令:
#define Little16toBig(A)  __REV16(A)

大小端的判断:可以用将16bit数据强制按字节访问低字节内容,如果等于高位字节值则为大端,否则小端
       或者用共用体union来访问16bit和8bit内容,判断方法一样



上一篇:Zigebee复习


下一篇:PWM控制LED亮度