码距
一个编码系统的码距是任意两个码字的最小距离。
例如个编码系统采用三位长度的二进制编码,若该系统有四种编码分别为:000,011,100,111,此编码系统中000与111的码距为3;011与000的码距为2;011与111的码距为1,则该编码系统的码距为1。
码距计算方法:两个编码按位异或后1的个数。101异或100 = 001,1的个数为1,所以码距为1。
为了检测
e个误码,最小码距d满足:d>=e+1;为了纠正
t个误码,最小码距d满足:d>=2t+1
循环校验码
数据发送、接受方约定一个“除数”,在K个信息位后拼接R个校验位作为“被除数”,添加校验位后需保证除法的余数为0。收到数据后,进行除法检查余数是否为0,若余数非0说明出错,则进行重传或纠错。
例如:原始报文为"1100101",其生成多项式为"x4+x3+x+1",求CRC编码结果?
- K=原始报文长度=7,R=生成多项式最高次幂=4,“除数”为生成多项式对应二进制码11011
- 原始报文左移R位,低位补0,求得“被除数”(11001010000)
- 做模2除法产生余数