字节序

本文详细解释了字节序的概念及其在计算机内存中的应用,包括Big-Endian和Little-Endian的区别,以及主机字节序与网络字节序的含义。文章还讨论了Java与C++之间的字节序差异及解决方法。
摘要由CSDN通过智能技术生成

字节序就是多个字节的数据在内存中的排放顺序,对于一个字节的数据则没有顺序可言,对于int short long应考虑。

分为两类:Big-Endian和Little-Endian  

简单理解就是大头还是小头的问题

(1)Big-Endian:高字节低地址

    int big=0x02030407  

    字节号 0   1   2    3

    数据   02  03  04  07

(2)Little-Endian:;高字节高地址

(3)主机字节序与网络字节序

主机字节序:与CPU相关。

网络字节序:数据在传输过程中是大头还是小头,Internet默认大头。

Java字节序和网络字节序都是大头,所以在网络通信中,如果通信双方都是Java程序则不必调整字节序。

若是Java与C++通信,则需C++一侧能进行正确转换。

若通信双方都是C++,发送和接收数据时要把整型和短整型数据进行主机字节序和网络字节序的转换。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值