大端模式 : 低位放在高地址
例1 :存放 int test = 0x0a0b0c0d;
1000H | 1001H | 1002H | 1003H |
0a | 0b | 0c | 0d |
例2:读取,按照大端方式读取
1 char array[8] = {0x01 , 0x02 , 0x03 , 0x04 , 0x05 , 0x06 , 0x07 , 0x08};
2 short int *pshort = (short *)array; // 强制转换为short int类型,2个字节
3 int *pint = (int *)array; //强制转换为int类型,4个字节
4 printf("0x%x , 0x%x , 0x%x , 0x%x", *pshort , *(pshort+2) , *pint , *(pint+1));
1000H | 1001H | 1002H | 1003H | 1004H | 1005H | 1006H | 1007H |
01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 |
- *pshort = 0x0102
- *(pshort+2) = 0x0506
- *pdouble = 0x01020304
- *(pint+1) = 0x05060708
小端模式: 低位放在低地址
例1 :存放 int test = 0x0a0b0c0d;
1000H | 1001H | 1002H | 1003H |
0d | 0c | 0b | 0a |
例2:读取,按照小端方式读取
1 char array[8] = {0x01 , 0x02 , 0x03 , 0x04 , 0x05 , 0x06 , 0x07 , 0x08};
2 short int *pshort = (short *)array; // 强制转换为short int类型,2个字节
3 int *pint = (int *)array; //强制转换为int类型,4个字节
4 printf("0x%x , 0x%x , 0x%x , 0x%x", *pshort , *(pshort+2) , *pint , *(pint+1));
1000H | 1001H | 1002H | 1003H | 1004H | 1005H | 1006H | 1007H |
01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 |
- *pshort = 0x0201
- *(pshort+2) = 0x0605
- *pdouble = 0x04030201
- *(pint+1) = 0x08070605