大端和小端(网络字节序和主机字节序)
2017-06-29 10:10
302 查看
大端(Big Endian):即网络字节序。
小端(Littile Endian):即主机字节序。
记忆方式:网络的范围很大,所以大端是网络字节序。
大端方式将高位存放在低地址,小端方式将低位存放在高地址。
采用大端方式进行数据存放符合人类的正常思维,而采用小端方式进行数据存放利于计算机处理。
如果将一个32位的整数0x12345678存放到一个整型变量(int)中,这个整型变量采用大端或者小端模式在内存中的存储由下表所示。
为简单起见,本书使用OP0表示一个32位数据的最高字节MSB(Most SignificantByte),使用OP3表示一个32位数据最低字节LSB(Least Significant Byte)。
---------------------------
地址偏移 大端模式 小端模式
0x00 12(OP0) 78(OP3)
0x01 34(OP1) 56(OP2)
0x02 56(OP2) 34(OP1)
0x03 78(OP3) 12(OP0)
---------------------------
如果将一个16位的整数0x1234存放到一个短整型变量(short)中。这个短整型变量在内存中的存储在大小端模式由下表所示。
---------------------------------
地址偏移 大端模式 小端模式
0x00 12(OP0) 34(OP1)
0x01 34(OP1) 12(OP0)
-------------------------------------
不同的CPU上运行不同的操作系统,字节序也是不同的,参见下表。
处理器 操作系统 字节排序
Alpha 全部 Little endian
HP-PA NT Little endian
HP-PA UNIX Big endian
Intelx86 全部 Little endian <-----x86系统是小端字节序系统
Motorola680x() 全部 Big endian
MIPS NT Little endian
MIPS UNIX Big endian
PowerPC NT Little endian
PowerPC 非NT Big endian <-----PPC系统是大端字节序系统
RS/6000 UNIX Big endian
SPARC UNIX
相关文章推荐
- 大端模式与小端模式 网络字节序与主机字节序
- 大端字节序、小端字节序、主机字节序、网络字节序
- 大端和小端(网络字节序和主机字节序)
- 大端和小端(网络字节序和主机字节序)
- 大端 、小端、主机字节序、网络字节序
- 大端与小端,大尾与小尾,高尾端与低尾端,主机字节序与网络字节序
- “字节序”是个什么鬼? 大端 小端 主机字节序 网络字节序
- 大端小端 主机字节序 网络字节序
- 大端和小端(网络字节序和主机字节序)
- 测试平台大端还是小端(网络字节序和主机字节序)
- 主机字节序(大端/小端) 和 网络字节序
- 网络字节序、主机字节序、大端与小端
- 大端(网络字节序)与小端(主机字节序)存储
- 网络通信时字节序转换原理与网络字节序、大端和小端模式
- 网络通信时字节序转换原理与网络字节序、大端和小端模式
- 网络通信时字节序转换原理与网络字节序、大端和小端模式
- 大端、小端、网络字节序
- 网络通信之 字节序转换原理与网络字节序、大端和小端模式
- 《unix网络编程》(6)网络字节序 大端模式和小端模式
- 网络通信时字节序转换原理与网络字节序、大端和小端模式