您的当前位置:首页正文

linux64是大端还是小端,大端和小端区别-linux

2024-11-08 来源:个人技术集锦

先解释一下?

低位、高位:

从int型分析:0x00 12 34 56;从数据大小来判断,从左到右分别是高位到低位。例如1000元,1当然是高位,0当然是低位。

由于这个int型是以十六进制表示的,0x6则表示一个十六进制位;

由于一个十六进制占用4位byte,也就是0xF等于0b1111(0b表示二进制表示);

如图:小端模式

例如:

int a=0x 00 12 34 56;

printf("addr:0x%0x, dat:%0x\n", ((char *)&a)[0]);

printf("addr:0x%0x, dat:%0x\n", ((char *)&a)[1]);

printf("addr:0x%0x, dat:%0x\n", ((char *)&a)[2]);

printf("addr:0x%0x, dat:%0x\n", ((char *)&a)[3]);

addr: 0xb6af0cac, dat:56

addr: 0xb6af0cad, dat:34

addr: 0xb6af0cae, dat:12

addr: 0xb6af0caf, dat:00

相反则说明是大端

显示全文