大端存储/小端存储

 

【理解】不管是大端法还是小端法存储,计算机在内存中存放数据的顺序都是从低地址到高地址,所不同的是首先取低字节的数据存放在低地址还是取高字节数据存放在低地址。

  • 若首先取高字节的数据存放在低地址,则是大端法;   
  •  若首先取低字节的数据存放在低地址,则是小端法。

大端存储/小端存储_第1张图片





便于记忆:

【一个高字节的数据宁愿屈身存储在 低地址中,可见它的 ”大气端庄“——>大端】

(大端)高尾端:高地址 存放 尾巴数据

(小端)高尾端:低地址 存放 尾巴数据


对应例题如下:

大端存储/小端存储_第2张图片


解释:

 unsigned int a= 0x1234; 其中32位中,int是4字节, 大端存储 ,补齐16进制表示为: 0x00 00 12 34  
  unsigned char b=*(unsigned char *)&a; char占一个字节,所以上述int a变量的最低地址存储的是  十六进制表示中最左边的1字节, 为0x00.  

若处理器为小端 (低地址存储低位) 模式,则b的值为0x34。


你可能感兴趣的:(C++)