目录
一,什么是数据中的高位低位,什么是内存空间中的高地址低地址;
一,什么是数据中的高位低位,什么是内存空间中的高地址低地址;
内存空间中的低地址和高地址;
数据中的高低位;
对于十进制,十六进制来说,数据的高位低位和二进制是一样的;
二,什么是大端存储小端存储
大端存储:内存空间中的低地址,存放数据中的高字节;内存空间中的高地址,存放数据中的低字节。
小端存储:内存空间中的低地址,存放数据中的低字节;内存空间中的高地址,存放数据中的高字节数据。
三,测试系统大小端存储的方法;
1.使用指针测试大小端
#include <stdio.h>
int main(int argc, char const *argv[])
{
int a = 0x12345678;
char *p = (char *)&a;
if(*p == 0x12)
{
printf("大端存储\n");
}else{
printf("小端存储\n");
}
printf("%#x\n",*p);
return 0;
}
2.使用共用体测试大小端
#include <stdio.h>
union val
{
int a;
char b;
};
int main(int argc, char const *argv[])
{
union val v1;
v1.a = 0x12345678;
//输出0x12为大端存储,输出0x78为小端存储
printf("%#x\n",v1.b);
return 0;
}