循环冗余校验码举例(计算机原理-循环冗余校验码)
校验码主要应用在通信和存储之中,把这些错误找出来。之前的奇偶校验码以及分组校验码,也就是海明码。已经感受到了基本的检验原理。这里再介绍一种新的模式,叫做循环冗余校验码。他是由K位的信息位以及R位的校验位组成。对于这种编码,我们主要掌握他的求解方法就可以。我们来看一道例题。
设生成多项式为G(x)=X^3 X^2 1,信息码为101001,求对应的CRC码
生成多项式,是用来计算校验位的。第一步:确定K,R以及生成多项式对应的二进制码
K=信息码的长度=6,R=生成多项式的最高次幂=3
校验码位数N=K R=9
生成多项式G(x)=1*X^3 1*X^2 0*X^1 1*X^0,对应的二进制码1101
第二步:移位 信息码左移R位,低位补0
第三步:相除
对移位后的信息码,用生成多项式进行模2除法,产生余数就是校验位
第四步:检错和纠错
发送:101001001 记为C9C8C7C6C5C4C3C2C1
接收:101001001 用1101进行模2除 余数为000,代表没出错
现在强制1位变错
接收:101001011 用1101进行模2除 余数为010,代表C2出错
细心的人可能会发现这里的余数是三位,如果是C9出错了。就不能发现了
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com