C++笔记2(网摘)字节和字节序

对于多字节的数字类型,有高位字节在前还是低位字节在前的区别,在TCP/IP中,
好象是规定一律高位字节在前,而Intel 80x86 CPU规定是低位字节在前

首先是字与双字在各种系统中内部存储的方式的不同,在Windows中字与双字是高位在低地址排列的,
而网络传输的标准是低位在低地址排列,比如一个十进制数字4660在Windows系统中存储成3412h,
而在网络上表示是1234h。所以我们在设置或读取协议首部中有关用字或双字表示(一般象TCP中的
端口、序号,而IP地址则不是)的字段时要切记转换他们的排列顺序

网络字节序是一种为方便网络上面数据的交互保证一致性而规则的一种字节序。
但是主机字节序是与CPU有关系的,比如x86/x64系列的主机字节序与网络字节序
就是逆序的。但是不要把所有主机的主机字节序都理解为与x86/x64一样。其
他很多CPU体系的字节序与网络字节序是一致的,也就是说在这些主机当中完
全可以不考虑主机字节序和网络字节序。

字节序,主要是有多个字节的数据类型,包括短整形(双字节)、整形(长整形,
四字节)、单精度浮点型(四字节)、长长整形(64位整形,八字节)、双精度
浮点形(八字节)等,在存取(读入到寄存器)高低位的顺序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值