标签:== sign class 重要 总结 了解 大端小端 ant mos
大端(Big Endian)和 小端(Little Endian)在开发中经常会遇到的问题,因此在正式开发前,清楚的了解当前的开发环境是大端模式还是小端模式就显得非常重要。
大端:指的是数据的最高有效位(MSB:Most Significant Bit)存储在内存块的低位地址。数据的最低有效位(LSB:Lowest Significant Bit)存储在内存块的高位地址。
小端:指的是数据的最高有效位(MSB:Most Significant Bit)存储在内存块的高位地址。数据的最低有效位(LSB:Lowest Significant Bit)存储在内存块的地位地址。
如下图所示:
下面通过一段测试代码来进行演示:
#include <stdio.h> int main() { int n = 0x12345678; char* p = (char*)&n; printf("%x,%x,%x,%x\n",p[0],p[1],p[2],p[3]); if(p[0] == 0x78 && p[3] == 0x12) { printf("Little Endian.\n"); } else if(p[0] == 0x12 && p[3] == 0x78) { printf("Big Endian.\n"); } else { printf("Unkown.\n"); } return 0; }
结果输出:
表明本机采用的是小端模式。
标签:== sign class 重要 总结 了解 大端小端 ant mos
原文地址:http://www.cnblogs.com/shxyhld/p/7648592.html