您的位置:首页 > 其它

大小端模式

2016-05-06 22:54 204 查看
1.小端模式是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中.

2.大端模式是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中.

3.大小端CPU字节序:32位宽的十六进制数0x12345678在小端模式的存放方式(假设从地址0x1000开始存放)为:

内存地址

0x1000

0x1001

0x1002

0x1003

存放内容

0x78

0x56

0x34

0x12

而在大端模式的存放方式为:

内存地址

0x1000

0x1001

0x1002

0x1003

存放内容

0x12

0x34

0x56

0x78

4、判断大小的的两种方法:1:共用体 2:指针类型转换

<1>共用体:

union M
{
int a;
char b;
} m;
int  Judge_Order( )
{
m.a = 1;
return (m.b ==1);
}


注:联合体union的存放顺序是所有成员都从低地址开始存放;

<2>指针类型转换

int Judge_Order( )
{
int i=0x1234;
char *p=(char *)&i;
if(*p==0x12)  return 1;
else  return 0;
}


5、一般操作系统都是小端,而通信协议是大端。

属于小端的机器: x86 、 DEC

属于大端的机器:PowerPC、IBM、Sun

ARM既可以工作在大端模式,也可以工作在小端模式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: