转换规则有两个
例如格雷码为 0101 转为 二进制为 0110
格雷码的最高位为0,二进制为0
格雷码的第2位为1,二进制的上一位为0 异或后为 1
格雷码的第3位为0,二进制的上一位为1 复制后为 1
格雷码的第4位为1,二进制的上一位为1 异或后为 0
所以最后转为二进制为0110
格雷码是一个二进制数系,其中两个相邻数的二进制位只有一位不同(任意两个相邻的代码只有一位二进制数不同)。格雷码由贝尔实验室的 Frank Gray 于 1940 年代提出,并于 1953 年获得专利。
举个例子, 3位二进制数的格雷码序列为:
000,001,011,010,110,111,101,100
十进制 | 二进制 | 格雷码 |
---|---|---|
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0010 | 0011 |
3 | 0011 | 0010 |
4 | 0100 | 0110 |
5 | 0101 | 0111 |
6 | 0110 | 0101 |
7 | 0111 | 0100 |
8 | 1000 | 1100 |
9 | 1001 | 1101 |
10 | 1010 | 1111 |
11 | 1011 | 1110 |
12 | 1100 | 1010 |
13 | 1101 | 1011 |
14 | 1110 | 1001 |
15 | 1111 | 1000 |