校验码

进位进制数

image-20211217000943198

基数:每个数码位所用到的不同符号的个数,r进制的基数位r

BCD码

8421码:

每4个二进制位对应一个十进制位(有6个冗余状态)
8、4、2、1分别对应每-位的权值,00001001分别对应09,进行加法后若超出该范围,则需+0110进行修正(强制向高位进1)

余3码
8421码+ (001 1)

2421码
2、4、2、1分别对应每一位的权值
表示04时最高位为0,表示59时最高位为1

ASCII码
大写字母: 65(0100 0001) ~90(0101 1010)
小写字母: 97(0110 0001)~122(0111 1010)

奇偶校验码

由若干位代码组成的一个字叫码字。
将两个码字逐位进行对比,具有不同的位的个数称为两个码字间的距离
一种编码方案可能有若千个合法码字,各合法码字间的最小距离称为“码距”。

奇校验码:整个校验码(有效信息位和校验位)中“1” 的个数为奇数。
偶校验码:整个校验码(有效信息位和校验位)中“1”的个数为偶数。

image-20211220011126645image-20211220011423955

异或运算后,当结果为一时,则代表为奇数个1,反之则为偶数个,源码异或后则可得偶校验的校验码

海明码

海明码设计思路:将信息位分组进行偶校验——多个校验位——多个校验位标注出错位置

image-20211220012015002

image-20211220012743819image-20211220012919501

补充:海明码有1位纠错,2位检错能力为了区分1位错和2位错,还需添加“全校验位”对整体进行偶校验注意:有的题目位置编号可能是从小到大的,但处理方法雷同

image-20211220091422918

循环冗余校验码

image-20211220085436399

算CRC码时用异或运算image-20211220090717509

理论上可以证明循环冗余校验码的检错能力有以下特点:
1)可检测出所有奇数个错误;
2)可检测出所有双比特的错误;
3)可检测出所有小于等于校验位长度的连续错误;
K个信息位,R个校验位,若生成多项式选择得当,且2^R>=K+R+1,则CRC码可纠正1位错image-20211220091216156

posted @ 2021-12-21 15:04  卓亦苇  阅读(988)  评论(0编辑  收藏  举报