大端小端存储区别一看即懂

字节排序按分为大端和小端,概念如下

大端(big endian):低地址存放高有效字节。数据的第一个字节先存。

小端(little endian):低地址存放低有效字节

stm32是小端模式,如一个32位无符号数0x12345678,

从低地址到高地址依次储存 78h  56h 34h 12h。

1.大端和小端的方式及判断


LSB的意思是:全称为Least Significant Bit,在二进制数中意为最低有效位,一般来说,MSB位于二进制数的最左侧,LSB位于二进制数的最右侧。

MSB的意思是:全称为Most Significant Bit,在二进制数中属于最高有效位,MSB是最高加权位,与十进制数字中最左边的一位类似。

0x12345678   16进制,两个数就是一字节  数据的第一个字节是12(MSB)

高有效字节——>低有效字节: 12 34 56 78

          低地址位     高低址位

大端:  12  34        56   78

小端: 78  56        34   12

#include<stdio.h>

int main(void ){
   unsigned int x =0x12345678;
   unsigned char *p = (unsigned char *)&x;
   printf("%0x %0x %0x %0x",p[0],p[1],p[2],p[3]);
   return 0;
}

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值