码迷,mamicode.com
首页 > 其他好文 > 详细

辨析字节序(Endianness)

时间:2019-03-22 16:45:33      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:family   因此   uri   32位   就是   int   大端   ESS   ttl   

字节序(Endianness, Byte Order)指的是对于一个多字节数值,当在内存中存储该值或者在链路中传输该值时,其值所包含的多个字节的排列顺序。

在计算机科学中,一般存在两种字节序,大端字节序(Big Endian)和小端字节序(Little Endian)。大端字节序指存储时数值最高位在前,即最高位存储在内存的低地址,也就是从左到右的顺序。小端字节序指存储时数值的最低位在前,也就是最高位存储在内存的高地址,即从右到左的顺序。

例如:IP 地址(IPv4,无符号32位整形数值) 10.4.16.0 的大端字节序表示为:0x0a041000,小端字节序表示为 0x0010040a. Intel x86 的处理器使用小端字节序,因此,如果使用 pcap 库读取网卡配置信息时,如果 10.4.16.0 为网络号,那么读到的数值为 0x0010040a.

在网络中,一般使用大端字节序。例如 IPv4, IPv6, TCPUDP 这些协议,都是使用大端字节序。因此,大端字节序也被称为网络字节序。

辨析字节序(Endianness)

标签:family   因此   uri   32位   就是   int   大端   ESS   ttl   

原文地址:https://www.cnblogs.com/asvblog/p/10549032.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!