1、Byte order for Intel Processors(Little Edian)
ID:XX MSB LSB
Byte0 7 6 5 4 3 2 1 0
Byte1 15 14 13 12 11 10 9 8
Byte2 23 22 21 20 19 18 17 16
Byte3 31 30 29 28 27 26 25 24
Byte4 39 38 37 36 35 34 33 32
Byte5 47 46 45 44 43 42 41 40
Byte6 55 54 53 52 51 50 49 48
Byte7 63 62 61 60 59 58 57 56
Example:
(1)在0字节上填充一个6位的数据:
Byte0 MSB <--- <--- <--- <--- LSB
填充模式:起始位:0,长度6
(2)在1和2字节上填充一个12位的数据(高位在低字节,低位在高字节):
Byte1 <--- <--- <--- LSB
Byte2 MSB <--- <--- <--- <--- <--- <--- <---
填充模式:起始位:12,长度12
2、Byte order for Mortorola Processors(BigEdian)
ID:XX MSB LSB
Byte0 7 6 5 4 3 2 1 0
Byte1 15 14 13 12 11 10 9 8
Byte2 23 22 21 20 19 18 17 16
Byte3 31 30 29 28 27 26 25 24
Byte4 39 38 37 36 35 34 33 32
Byte5 47 46 45 44 43 42 41 40
Byte6 55 54 53 52 51 50 49 48
Byte7 63 62 61 60 59 58 57 56
Example:
(1)在0字节上填充一个6位的数据:
Byte0 MSB <--- <--- <--- <--- LSB
填充模式:起始位:0,长度6
(2)在1和2字节上填充一个12位的数据(高位在高字节,低位在低字节):
Byte1 MSB <--- <--- <---
Byte2 <--- <--- <--- <--- <--- <--- <--- LSB
填充模式:起始位:11,长度12
总结:
(1)当一个信号的数据长度不超过 1 个字节(8 位)时,Intel 与 Motorola 两种格式的编码结果没有什么不同,完全一样。
(2)当信号的数据长度超过 1 个字节(8 位)时,两者的编码结果出现 了明显的不同:
Intel是高位在低字节,低位在高字节;
Motorola是高位在高字节,低位在低字节;