加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • 1.格雷碼編碼規(guī)則
    • 2.格雷碼轉(zhuǎn)二進(jìn)制公式
    • 3.格雷碼的特點(diǎn)及作用
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

格雷碼

2021/03/22
4464
閱讀需 6 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

格雷碼是一種二進(jìn)制數(shù)碼系統(tǒng),在通信、計(jì)算機(jī)編程等領(lǐng)域有廣泛應(yīng)用。它由弗蘭克·格雷于1953年發(fā)明,也因此得名。

1.格雷碼編碼規(guī)則

在格雷碼中,相鄰的兩個(gè)數(shù)值在二進(jìn)制下只有一位不同。以4位格雷碼為例,代碼如下:

十進(jìn)制 二進(jìn)制 格雷碼
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
... ... ...

從上表中可以看出,當(dāng)十進(jìn)制數(shù)值從0變化到1時(shí),在二進(jìn)制下的值也從0000變?yōu)?001,但在格雷碼下保持不變。當(dāng)十進(jìn)制數(shù)從1到2變化時(shí),二進(jìn)制值和格雷碼值均發(fā)生變化,而當(dāng)十進(jìn)制數(shù)從2到3變化時(shí),雖然二進(jìn)制值仍然發(fā)生變化,但格雷碼只有一位發(fā)生了改變。

2.格雷碼轉(zhuǎn)二進(jìn)制公式

將n位的格雷碼轉(zhuǎn)換成相應(yīng)的n位二進(jìn)制數(shù)的公式如下:

$$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$分別代表格雷碼和二進(jìn)制碼的第$i$位(從右往左數(shù)), $operatorname{xor}$代表異或運(yùn)算符。

3.格雷碼的特點(diǎn)及作用

格雷碼不僅能夠減少硬件電路中產(chǎn)生的干擾,還可以降低計(jì)算機(jī)數(shù)字系統(tǒng)中出錯(cuò)率,提高計(jì)算效率,因此在數(shù)字通信、邏輯設(shè)計(jì)及編程等領(lǐng)域都具有重要作用。

另外,格雷碼還可以被用于解決反跳問題(瞬變異常導(dǎo)致系統(tǒng)錯(cuò)誤)和加密數(shù)據(jù)。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜