BCD码
BCD码主要是表示为以4位机器数表达0-9这10个数字。
8421BCD码
8421BCD码的表达方式如下:
0 = 0000
1 = 0001
2 = 0010
3 = 0011
4 = 0100
5 = 0101
6 = 0110
7 = 0111
8 = 1000
9 = 1001
余3BCD码
余3BCD码是在BCD码的基础上进一步对8421BCD码进行 0011的加法。
0 = 0000 = 0011
1 = 0001 = 0100
2 = 0010 = 0101
3 = 0011 = 0110
4 = 0100 = 0111
5 = 0101 = 1000
6 = 0110 = 1001
7 = 0111 = 1010
8 = 1000 = 1011
9 = 1001 = 1100
格雷码
格雷码是另一种在机器数中常用的编码形式,通常与8421码、余3BCD码连用。但是格雷码在存在一定的计算难度,笔者在此以较为简单的方式进行讲解。
倘若 一个数据为 B1 B2 B3 B4
B1 :1
B2 :0
B3 :1
B4 :0
则相对应的格雷码为 G1 G2 G3 G4
G1 = B0 + B1 = 1
G2 = B1 + B2 = 1
G3 = B2 + B3 = 1
G4 = B3 + B4 = 1
则1010的格雷码为1111
格雷码表
AB/CD | 00 | 01 | 11 | 10 |
---|---|---|---|---|
00 | 0000 | 0001 | 0011 | 0010 |
01 | 0100 | 0101 | 0111 | 0110 |
11 | 1100 | 1101 | 1111 | 1110 |
10 | 1000 | 1001 | 1011 | 1010 |
以弓字型进行排列
由此可以得到格雷码序列0-9
0 = 0000
1 = 0001
2 = 0011
3 = 0010
4 = 0110
5 = 0111
6 = 0101
7 = 0100
8 = 1100
9 = 1101