BCD码

用4位二进制数来表示1位十进制数中的0~9这10个数码

说白了就是前面提到的 十进制转二进制

BCD码里面又有8421码,2421码,5421码,说白了,就是数轴上面的数字不一样
对应位就不一样

举个例子十进制数8
在8421码里面是1000
在2421码里面是1110,因为2+4+2+0=8
在5421码里面是1011,因为5+0+2+1=8

请注意!!!是用4位二进制数来表示1位十进制数
这意味着,假设十进制数74 它的BCD码应该是
7:0111
4:0100
74:01110100

格雷码

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码或反射码。

十进制数 格雷码
0 0000
1 0001
2 0011
3 0010
4 0110
5 0111
6 0101
7 0100
8 1100
9 1101
10 1111
11 1110
12 1010
13 1011
14 1001
15 1000

产生的规律:(以下说的改变就是把0改成1,或者把1改成0)
第一步:改变最右边的那个数值
第二步:改变右起第一个为1的数左边的值
一直重复



奇偶校验码

信息在存储和传输过程中很容易出现错误,需要进行检错。这个时候需要用到奇偶校验码。
奇偶校验码就是在原本这个数中再加入1位数

奇校验

需要保证加了校验码以后所含的1的个数为奇数。

偶校验

需要保证加了校验码以后所含的1的个数为偶数。

举个例子
现有一个数1100111,采用偶校验
这个数现在一共是五个一,偶校验需要把它变成偶数个一,所以在后面添1

再举个例子
现有一个数00000100,采用奇校验
但是现在只有一个1,已经是奇数了,所以只需要在后面添0

弊端

奇偶校验只能检错不能纠错
如果出现两位错,奇偶不变的情况,就无法判断出错

注意

The parity bit may be added at either end of a group.
需要注意的是:这个校验位可以在任意一端写,就是说可以写在这组数的前面,也可以写在最后面。

最后修改:2022 年 03 月 08 日
如果觉得我的文章对你有用,请随意赞赏