本节书摘来自华章计算机《C语言编程魔法书:基于C11标准》一书中的第2章,第2.6节,作者: 陈轶 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.6 大端与小端
现代计算机系统中含有两种存放数据的字节序:大端(Big-endian)和小端(Little-endian)。所谓大端字节序是指在读写一个大于1个字节的数据时,其数据的最高字节存放在起始地址单元处,数据的最低字节存放在最高地址单元处。所谓小端字节序是指在读写一个大于1个字节的数据时,其数据的最低字节存放在起始地址单元处,而数据的最高字节存放在最高地址单元处。比如,我们要在地址0x00001000处存放一个0x04030201的32位整数,其大端、小端存放情况如图2-9所示。
![85522d9f92121565a27feb9ad1e1f208b0bd967a](https://i-blog.csdnimg.cn/blog_migrate/e2a3831333ded65327c2d415d42daed7.png)
当前,通用桌面处理器以及智能移动设备的处理器一般都用小端字节序。通信设备中用大端字节序比较普遍。
本书后续所要叙述的内容中,若无特殊说明,都是基于小端字节序进行描述。