二进制转格雷码

二进制如何转格雷码

转换规则有两个

例如二进制 0101 转为格雷码为 0111

二进制的最高位为0,格雷码为0

二进制的第2位为1,二进制的上一位为0  异或后为 1

二进制的第3位为0,二进制的上一位为1  异或后为 1

二进制的第4位为1,二进制的上一位为1  异或后为 1

所以最后转为格雷码为0111

格雷码是什么

格雷码是一个二进制数系,其中两个相邻数的二进制位只有一位不同(任意两个相邻的代码只有一位二进制数不同)。格雷码由贝尔实验室的 Frank Gray 于 1940 年代提出,并于 1953 年获得专利。

举个例子, 3位二进制数的格雷码序列为:

000,001,011,010,110,111,101,100

十进制 二进制 格雷码 转换关系表

十进制二进制格雷码
000000000
100010001
200100011
300110010
401000110
501010111
601100101
701110100
810001100
910011101
1010101111
1110111110
1211001010
1311011011
1411101001
1511111000