【摘要】 以前搞应用程序时,并不怎么需要关注大小端问题,虽然学习过但并没太在意。最近搞底层模块消息交互开发就遇到了,数据储存是小端,但是终端是大端,也就是字节顺序出现了问题,又学习了下,简单分享下。
1、大小端简介
这里说的大小端指数据在内存中的存放顺序,即字节序,常见的有两种:
1)Big-Endian(大端字节序):高位字节排放在内存的低地址端,低位字节排放在内存的高地…
以前搞应用程序时,并不怎么需要关注大小端问题,虽然学习过但并没太在意。最近搞底层模块消息交互开发就遇到了,数据储存是小端,但是终端是大端,也就是字节顺序出现了问题,又学习了下,简单分享下。
1、大小端简介
这里说的大小端指数据在内存中的存放顺序,即字节序,常见的有两种:
- 1)Big-Endian(大端字节序):高位字节排放在内存的低地址端,低位字节排放在内存的高地址端(符合人们日常阅读习惯);
- 2)Little-Endian(小端字节序):低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。
有点绕,举例说明下:
现在有个32位的整数0x12345678
cha* | 0xa | 0xb | 0xc | 0xd |
---|---|---|---|---|
大端模式 | 0x12 | 0x34 | 0x56 | 0x78 |
小端模式 | 0x78 | 0x56 | 0x34 | 0x12 |
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
相关推荐