1、BCD编码
用 4 位二进制数来表示 1 位十进制数(中的0~9这10个数码)
BCD码也称二进码十进数,BCD码可分为有权码和无权码两类。其中,常见的有权BCD码有8421码、2421码、5421码,无权BCD码有余3码、余3循环码。
8421BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。
5421BCD码和2421BCD码同为有权码,它们从高位到低位的权值分别为5、4、2、1和2、4、2、1。
余3码是由8421码加3后形成的,是一种“对9的自补码”。
余3循环码是一种变权码,每一位的在不同代码中并不代表固定的数值,主要特点是相邻的两个代码之间仅有一位的状态不同。
格雷码(也称循环码)是由贝尔实验室的FrankGray在1940年提出的,用于PCM方法传送信号时防止出错。格雷码是一个数列集合,它是无权码,它的两个相邻代码之间仅有一位取值不同。
余3循环码是取4位格雷码中的十个代码组成的,它同样具相邻性的特点。
2、二进制码转格雷码
若二进制码表示为: B[N-1]B[N-2]...B[2]B[1]B[0];
相应地, 则二进制格雷码表示为: G[N-1]G[N-2]...G[2]G[1]G[0].
其中最高位保留: G[N-1] = B[N-1];
其他各位: G[i] = B[i+1] xor B[i]. (i = 0, 1, 2, ..., n-2)
Xor 异或
3、格雷码转二进制码
若二进制格雷码表示为: G[N-1]G[N-2]...G[2]G[1]G[0];
相应地, 则二进制码表示为: B[N-1]B[N-2]...B[2]B[1]B[0].
其中最高位保留: G[N-1] = B[N-1];
其他各位: B[i] = B[i+1] xor G[i]. (i = 0, 1, 2, ..., n-2)
Xor 异或
各位可以根据公式自行推导一下,是否吻合😜
部分资料参考自 百度百科.
2023-9-19 20:27:24 经网友指正,BCD码不包含格雷码,特此修正