概述:本文主要简单介绍存储的大端模式与小端模式,实际上我们也只需要简单了解它们的存储区别即可,无需深入研究。
- 什么是大端与小端?
大端模式(Big-endian):是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中(高字节>>低地址)。
小端模式(Little-endian):是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中(高字节>>高地址)。
比如:0x12345678,在大/小端模式的存储位置如下:
内存地址 | 大端模式 | 小端模式 |
addr+3 | 0x78 | 0x12 |
addr+2 | 0x56 | 0x34 |
addr+1 | 0x34 | 0x56 |
addr | 0x12 | 0x78 |
常用的X86结构是小端模式,大多数的ARM,DSP同样为小端模式。有的ARM处理器可以通过硬件选择是大端模式还是小端模式。
总结:大端就是高字节>>低地址,小端则是高字节>>高地址。