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

大端模式 && 小端模式学习笔记

时间:2014-09-10 12:47:20      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:style   color   os   io   ar   数据   sp   on   c   

      Big-Endian和Little-Endian的定义如下:
1) Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。
2) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。


不同字节序如何存储数据?

看看两种方式如何存储数据,假设从地址0x00000001处开始存储十六进制数0x12345678,那么

Bit-endian 如此存放(按原来顺序存储)
0x00000001           -- 12
0x00000002           -- 34
0x00000003           -- 56
0x00000004           -- 78

Little-endian 如此存放(颠倒顺序储存)
0x00000001           -- 78
0x00000002           -- 56
0x00000003           -- 34
0x00000004           -- 12

一个很好的记忆方法是,大端序是按照数字的书写顺序进行存储的,而小端序是颠倒书写顺序进行存储的。



bool IsBigEndian()

{

int a =1 ; 

if(((char*)&a)[3] ==1)

return true ;

else

return false ;

}

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

bool IsBigEndian()

{

union 

{

unsigned short a ;

char b ;

} c;


c.a =0x0102 ;


if(c.b ==1)

return true ;

else

return false ;

}


大端模式 && 小端模式学习笔记

标签:style   color   os   io   ar   数据   sp   on   c   

原文地址:http://my.oschina.net/floristgao/blog/311966

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