格雷码

  • 2021/03/22

格雷码是一种二进制数码系统,在通信计算机编程等领域有广泛应用。它由弗兰克·格雷于1953年发明,也因此得名。

1.格雷码编码规则

在格雷码中,相邻的两个数值在二进制下只有一位不同。以4位格雷码为例,代码如下:

十进制 二进制 格雷码
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
... ... ...

从上表中可以看出,当十进制数值从0变化到1时,在二进制下的值也从0000变为0001,但在格雷码下保持不变。当十进制数从1到2变化时,二进制值和格雷码值均发生变化,而当十进制数从2到3变化时,虽然二进制值仍然发生变化,但格雷码只有一位发生了改变。

2.格雷码转二进制公式

将n位的格雷码转换成相应的n位二进制数的公式如下:

$$b_n=g_n$$$$b_{n-1}=g_{n-1} operatorname{xor}g_n$$$$b_{n-2}=g_{n-2} operatorname{xor}g_{n-1} operatorname{xor}g_n$$$$...$$$$b_1=g_1 operatorname{xor} g_2operatorname{ ... }operatorname{xor}g_n$$

其中,$g_i$和$b_i$分别代表格雷码和二进制码的第$i$位(从右往左数), $operatorname{xor}$代表异或运算符。

3.格雷码的特点及作用

格雷码不仅能够减少硬件电路中产生的干扰,还可以降低计算机数字系统中出错率,提高计算效率,因此在数字通信、逻辑设计及编程等领域都具有重要作用。

另外,格雷码还可以被用于解决反跳问题(瞬变异常导致系统错误)和加密数据。

人工客服
(售后/吐槽/合作/交友)

相关方案

  1. 1.
  2. 2.
  3. 3.
  4. 4.
  5. 5.
  6. 6.
  7. 7.
  8. 8.
  9. 9.
  10. 10.
  11. 11.
  12. 12.
  13. 13.
  14. 14.
  15. 15.
  16. 16.
  17. 17.
  18. 18.
  19. 19.
  20. 20.
查看全部20条内容