百度空间 | 百度首页 
               
 
查看文章
 
little endian 与 big endian
2008-06-25 18:12

little endian:低地址存放最低有效字节 | intel x86系列CPU .net

big endian:低地址存放最高有效字节    |   Motorala PowerPC系列CPU java虚拟机 网络传输

例:

#include "stdafx.h"
#include "iostream"
using namespace std;


int main(int argc, char* argv[])
{
typedef union u{
   int integer;
   char character;
}u;
u uu;
uu.integer=1;
if(uu.character==1)
   cout<<"little endian"<<endl;
else
   cout<<"big endian"<<endl;
return 0;
}

一个很牛的检测当前平台是little endian还是big endian 的小程序。

声明一个union,并指定其中的int值为1,在内存中,数据存储如下。

little endian:

0x0012ff7c

01                    00                        00                      00

则char值显然应该为1;

big endian:

0x0012ff7c

00                   00                         00                       01

char值为0。


类别:c/c++ | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu