WEB开发网
开发学院软件开发C++ 大端、小端问题详解 阅读

大端、小端问题详解

 2012-05-25 10:18:19 来源:WEB开发网   
核心提示:c) 主机字节序:遵循Little-Endian,d) 网络字节序:TCP/IP各层协议将字节序定义为Big-Endian,大端、小端问题详解(2),因此TCP/IP协议中使用的字节序通常称之为网络字节序,所以当两台主机之间要通过TCP/IP协议进行通信的时候就需要调用相应的函数进行主机序 (Little-Endian

c) 主机字节序:遵循Little-Endian。
d) 网络字节序:TCP/IP各层协议将字节序定义为Big-Endian,因此TCP/IP协议中使用的字节序通常称之为网络字节序。所以当两台主机之间要通过TCP/IP协议进行通信的时候就需要调用相应的函数进行主机序 (Little-Endian)和网络序(Big-Endian)的转换


三、 什么是高/低地址端

首先我们要知道我们C程序映像中内存的空间布局情况:在《C专家编程》中或者《Unix环境高级编程》中有关于内存空间布局情况的说明,大致如下图:
----------------------- 最高内存地址 0xffffffff
栈底

栈顶

-----------------------

NULL (空洞) 
-----------------------

-----------------------
未初始 化的数据
----------------------- 统称数据段
初始化的数据
-----------------------
正 文段(代码段)
----------------------- 最低内存地址 0x00000000

以上图为例如果我们在栈上分配一个unsigned char buf[4],那么这个数组变量在栈上是如何布局的呢?看下图:
栈底 (高地址)
----------
buf[3] 
buf[2]
buf[1]
buf[0]

----------
栈顶 (低地址)

上一页  1 2 3 4 5  下一页

Tags:大端 问题 详解

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接