计算机基础:校验码
码距:任意(所有)两条代码的最小距离;
111和0000的距离是4
000和1100的距离是2
奇偶检验码:
奇偶校验:将数据本身增加1位,使数据位中的1的个数为奇数
偶数)向数据本身添加1位,使数据位中的第一个数成为偶数
仅发现奇数位错误时
海明码:奇偶校验、组检查,可以显示哪个数字错了。
检查位置:在2的n次方的位置。
假定数据位为n并且奇偶校验位为k个比特,则获得下列方程式:
这很重要。 考试要开始了。
例:检查32位长的数据。 需要多少校验位?
k=1时:明显不成立;
k=2时,明显不成立
当k=3时,明显不成立
k=4时,明显不成立
k=5时,明显不成立
k=6时,成立
所以在K=6的时候集合就可以了,需要6个检查位。
k6的时候都成立,但是只拿最小的就可以了!
循环冗余校验码:
例如,如果消息代码是10111,CRC校验码是什么?
将x置换为2而得到,所以如下。 其中相同的数据为1,没有的为0,得到10011。 用不进位的加法显示运算:除数为101110000,多项式的最高乘方为几次方,追加几个0;
被除数为1的10011 :
3 .运算
请注意,计算时采取了不进位的加法(1)1=0,不在上面的位数中加1 )。 如果最高次幂为n,则在相加后保留n-1位((这个块我感觉是这样的,但不知道是否有根据) )。
余数为校验码: 1100
4 .用从前一步骤的馀数代替除尾数增加的4个0,得到的新数据位为101111100。