循环冗余码(CRC)及计算方法 循环冗余校验码怎么算?

循环冗余校验码怎么算?循环冗余校验码的计算方法:CRC(cyclic redundancy)循环冗余校验码(cyclic redundancy check,CRC)是一种常用的校验码,在早期通信中得到

循环冗余校验码怎么算?

循环冗余校验码的计算方法:CRC(cyclic redundancy)循环冗余校验码(cyclic redundancy check,CRC)是一种常用的校验码,在早期通信中得到了广泛的应用。由于早期的通信技术是不可靠的(不可靠的来源是由通信技术决定的,如电磁波通信中雷电等因素的影响),不可靠的通信会带来“确认信息”的混乱。书中提到,红军和蓝军联手攻打山头的情况下,在敌人的情况下,红军向蓝军发出了第二天进攻的信息。蓝军收到消息后,发出了确认消息。但蓝军担心,如果“确认电文”不可靠,不能送达红军,岂不是很危险?于是红军又发了一条“求证电文”,但同样的问题解决不了,红军还是不敢贸然行动。

求循环冗余校验码的步骤?

信息代码:110信息多项式:K(x)=x2 x

生成代码:10011生成多项式:G(x)=X4 x 1(r=4)

解决方案:1)K(x)*X4的乘积为x6x5,对应代码为1100000。

2)产品g(x)(根据模块化二算法)。

结果显示冗余码为0101,码字为1100101。

****************************110←Q(x)

g(x)→10011)1100000←f(x)*XR

*******10011

*******10110

**********10011

***********************************************************************************************************

循环冗余码:0101

模2:

1-0-0=1]有效信息:m;

除数g(生成多项式)有:m/g=q R/g;

在这种情况下,可以选择R作为校验位,那么Mr是校验码。

校验原理:(M-R)/g=q 0/g

注:将收到的校验码除以约定的除数。如果余数为0,则可以认为接收到的数据是正确的。

示例:有效信息1101,生成多模式1011

循环校验码解决方案:

有效信息1101(k=4),即m(x)=X3 x2 x0,生成多项式1011(r1=4,即R=3);

即g(x)=X3 X1 x0,m(x)·X3=X6 X5 X3,即1101000(左移三位到1101);

m(x)·X3/g(x)=1101000/1011=1111001/1011,即1010的CRC为1101001。

计算如下: