大端和小端

int checkCPU()
{
    union w
    {
        int a;
        char b;
    }c;
    c.a = 1;
    return (c.b == 1);//小端返回1,大端返回0
}

采用Little-endian模式的CPU对操作数的存放方式是从低字节到高字节,而Big-endian模式对操作数的存放方式是从高字节到低字节。例如32bit的数 0x12345678 在Little-endian模式CPU内存中的存放方式(假设从地址0x4000开始存放)为:

0x4000    0x78
0x4001    0x56
0x4002    0x34
0x4003    0x12

而在Big-endian 模式CPU内存中的存放方式为:

0x4000    0x12
0x4001    0x34
0x4002    0x56
0x4003    0x78

猜你喜欢

转载自blog.csdn.net/chen134225/article/details/81132025
今日推荐