欢迎光临散文网 会员登陆 & 注册

C语言学习(2)大端存储和小端存储

2023-04-07 19:31 作者:MayTheFifteenth  | 我要投稿

 /********************************************************************************************************

                     刚开始学习C语言,仅代表自己的学习理解,不代表观点一定正确

                                                              只做学习记录

                                                     有错误的麻烦指出,谢谢!

*********************************************************************************************************/



系统存储数据的方式有两种:大端存储(Big-endian)和小端存储(Little-endian)

大端存储:高字节的数据存储在低地址

小端存储:低字节的数据存储在低地址

网络传输的数据统一采用大端存储(htons htonl ntohs nothl)

———————————————————————————————————————

 

什么是大端/小端存储:

假设现在采用的系统是32位系统,则地址的总线是32位,内存地址是4个字节

 

如果地址分配为:

0x00000000  0x00000001  0x00000010  0x00000011

则相对应的(大端)数据为

低位         中位        高位       最高位

反之(小端)数据为

 最高位        高位        中位        低位

———————————————————————————————————————

 

例:

输出的结果可能是0x12或者0x78,取决于当前的系统环境(储存数据的方式)

 

设计一个程序、判断机器是大端存储还是小端存储


C语言学习(2)大端存储和小端存储的评论 (共 条)

分享到微博请遵守国家法律