循环冗余检验CRC

例:生成多项式P(X) = x3+x2+1,信息码M = 101001,求CRC校验码

 

分析:生成多项式P(X),其中X的数值表示是几进制数据,题目中不做特殊说明时为二进制

   根据生成多项式P(X) =  x3+x2+1,可以得出除数:P(X) = 1101,n = 3

   多项式的最高项的幂数就是n的大小

   多项式中x的幂数代表二进制数据中该位为1,3就是第四位为1,2就是第三位为1,1就是第0位位1,第二位不在多项式中故为0

 

根据n的大小和信息码M,可以求出被除数:XnM = 23M = 101001000    (相当于在M后添加n个0)

有了被除数和除数,再进行模二运算

 

 余数即为校验码,发送出去的数据为M+R,即:101001001

posted @ 2020-08-21 15:47  只猫  阅读(592)  评论(0编辑  收藏  举报