格雷码
维基百科,自由的百科全书
格雷码(循环碼)是任意两个相邻数的代码只有一位二进制数不同的BCD码,它与奇偶校验码同属可靠性编码。
目录 |
[编辑] 簡介
格雷碼(Gray code)是由貝爾實驗室的Frank Gray在1940年提出,用於在PCM(Pusle Code Modulation)方法傳送訊號時防止出錯,並於1953年三月十七日取得美國專利。格雷碼是一個數列集合,相鄰兩數間只有一個位元改變,為無權數碼,且格雷碼的順序不是唯一的。
[编辑] 直接排列
以二進制為0值的格雷碼為第零項,第一項改變最右邊的位元,第二項改變右起第一個為1的位元的左邊位元,第三、四項方法同第一、二項,如此反覆,即可排列出n個位元的格雷碼。
[编辑] 二進位數轉格雷碼
(假設以二進制為0的值做為格雷碼的0)
格雷碼第n位 = 二進位碼第(n+1)位+二進位碼第n位。不必理會進位。
[编辑] 格雷碼轉二進位數
二進位碼第n位 = 二進位碼第(n+1)位+格雷碼第n位。因為二進位碼和格雷碼皆有相同位數,所以二進位碼可從最高位的左邊位元取0,以進行計算。