1分钟分清大端序和小端序

本文详细介绍了字节序的概念,包括大端序和小端序的定义,以及它们在内存中的存储方式。大端序遵循高字节在低地址的原则,而小端序则相反。网络字节序即大端序,用于TCP/IP协议中数据传输的一致性。了解这些基础知识对于计算机系统的底层理解至关重要。
摘要由CSDN通过智能技术生成

自大的人眼高手低

定义

大端序就是高字节放在低地址
小端序就是高字节放在高地址

字节(数据)的高低

从左到右,由高到低。

如有一个int 0x11223344,0x11是最高的字节,0x44是最低的字节;

0x22相对于0x11是低字节,相对于0x33是高字节

地址的高低

越靠近0x00000000的地址越低,越靠近0xffffffff的地址越高

两种方法的数据存储方式

现有0x0000001~0x00000004合计4个字节的地址,用来存储0x11223344这个32位数,那么大端序是按照原顺序储存数据的,对应关系如下:
0x00000001 – 11
0x00000002 – 22
0x00000003 – 33
0x00000004 – 44

小端序就是逆序:
0x00000001 – 44
0x00000002 – 33
0x00000003 – 22
0x00000004 – 11

其实,大端序就是按照人类的思维方式进行存储数据,地址的编排是符合直觉的,只是我们指定字节数据左髙右低,所以才有了大端序是高字节放在低地址这样拗口的说

实际使用中记住顺序存储是大端序即可

什么是网络字节序?

TCP/IP首部中所有的二进制整数在网络中传输时都要求以大端序进行传输,所以大端序别称网络字节序,二者是同一个东西。所有其他形式存储的二进制整数的机器在传输数据前需要将首部转化成网络字节序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值