Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > C/C++ > big endian & little endian(大端字节序和小端字节序)
【标  题】:big endian & little endian(大端字节序和小端字节序)
【关键字】:big,endian,little,endian
【来  源】:http://www.cublog.cn/u/12715/showart.php?id=211708

big endian & little endian(大端字节序和小端字节序)

Your Ad Here

假设:a=0x12345678;

则大端字节序和小端字节序的存储如下图所示:

                 Big-Endian                               Little-Endian

0字节            12h                                       78h

1字节            34h                                       56h

2字节            56h                                       34h

3字节            78h                                       21h

你也可以用下面的程序测验你的机器是大端字节序还是小端字节序:

#include <stdio.h>

int IsLittleEndian()
{
 unsigned int usData = 0x12345678;
 unsigned char *pucData = (unsigned char*)&usData;

 if(*pucData == 0x78)
 {
     return 1;
 }
 else
 {
     return 0;
 }

}

int main(void)
{
    
    if(IsLittleEndian())
    {
        printf("is little endian!\n");
    }
    else
    {
        printf("is big endian!\n");
    }

    return 0;
}

此前所转的一篇文章上的测试程序是错误的,以免误导大家,所以闲来无事我写了一小段程序来测试。这段程序已经在我的机器上测试过,环境是VC6。我的机器是Intel的X86系列,所以是little endian.

 

子类超类在实践中的应用:【上一篇】
std::map 操作符 [] 使用时注意的地方:【下一篇】
【相关文章】
  • 关于big-enidan和small-endian
  • Endian完整论述 - 一个引起小人国战争的问题!:)
  • gb,big5,utf-8互相转码
  • 如何处理数据库字段是bigint型?
  • big endian vs little endian
  • 小端(Little Endian) 大端(Big Endian)
  • ATI双头显卡+双显示器实现Big Desktop效果
  • BigDecimal,金融货币计算中的关键技术
  • 关于endian
  • little endian和big endian的概念解释,判定与用途
  • 【随机文章】
  • 什么是粉刺黑头粉刺痤疮粉刺的治疗粉刺的治疗方法康本教你怎么治疗粉刺痤疮
  • Java 语法介绍(五):条件控制
  • WIN2000服务详解及优化建议
  • 一个简单的CMDShell后门
  • 漫谈IBM pSeries的逻辑分区和动态逻辑分区(五)
  • apache asp.net
  • 综合布线系统梗概(2)
  • 解决通过nat的ftp无法列表问题
  • 14.5.1 Literals
  • MySQL:"怎样重新设置一个忘记的口令",这次误操作不管用了?
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.