十進制 0 1 2 3 4 5 6 7 8 9
二進制 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
格雷碼 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101
從表二中可看出二進制碼Cn與格雷碼Rn之間的關係:
Cn = Rn,
Cn-1 = Rn⊕Rn-1,
Cn-2 = Rn⊕Rn-1⊕Rn-2,
…
C1 = Rn⊕Rn-1⊕Rn-2⊕…⊕R2⊕R1,
C0 = Rn⊕Rn-1⊕Rn-2⊕…⊕R2⊕R1⊕R0
其中符號『⊕』表示异或,其運算規則如下:
0⊕0 = 0,0⊕1 = 1,1⊕0 = 1,1⊕1 = 0
可以将以上算法简化如下:
Cn = Rn,
Cn-1 = Cn⊕Rn-1
例如,格雷碼R(1,1,0,0)轉換為二進制:
C(1,1⊕1,1⊕1⊕0,1⊕1⊕0⊕0)= C(1,0,0,0)
点击此处查看附件