大小端模式、网络字节序

1.内存简介

地址线根数	        对应范围				空间大小		       计算过程
8			00~FF				256B			2^8 = 256B
16			0000~FFFF			62K			2^16 = 2^6K = 64K
20			00000~FFFFF			1M			2^20 = 2^10K = 1M
24			000000~FFFFFF		        16M			2^24 = 2^4*M = 16M
28			0000000~FFFFFFF		        256M		        2^28 = 2^8 M = 256M
32			00000000~FFFFFFFF		4G			2^32 = 2^2*G = 4G	

 下面以unsigned int value = 0x12345678为例,分别看看在两种字节序下其存储情况 :

 
1.大端模式(Big-endian

   高尾端:数据的高字节保存在内存的低地址中。 

  Big-Endian: 低地址存放高位,如下:
 
  高地址   
  ---------------   
  buf[3] (0x78) -- 低位   
  buf[2] (0x56)   
  buf[1] (0x34)   
  buf[0] (0x12) -- 高字节  
  ---------------   
  低地址

 

2.小端模式(Little-Endian

  低尾端:数据的低字节保存在内存的低地址中。

 
 Little-Endian: 低地址存放低位,如下:
 高地址   
 ---------------   
 buf[3] (0x12) -- 高位   
 buf[2] (0x34)   
 buf[1] (0x56)   
 buf[0] (0x78) -- 低字节   
 --------------
 低地址
 
内存地址小端模式存放内容大端模式存放内容
0x40000x780x12
0x40010x560x34
0x40020x340x56
0x40030x120x78

3.微软 采用:   小端模式

4.网络字节序:大端模式

 

转载于:https://www.cnblogs.com/jiangyan219/articles/8974331.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值