数据在内存中存储的基础单元是字节(Byte),最小的存储单元是位(bit);在常用的ARM架构中,按照字节处理数据时,数据总是低位在后,高位在前,即位LSB(least significant bit,LSB);而单个Byte所能表达的数据量有限,C/C++中扩展了众多以多个Byte表达的基础类型,如常用的int、uint32_t等等。

CPU处理内存中存储多个Byte的方式有两种,分别是大端模式与小端模式;所谓的大端模式,就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。所谓的小端模式,就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。

举个例子,比如数字 0x12 34 56 78在内存中的表示形式为: