在采用crc校验时,若生成多项式g(x)=x4+x3+x+1,进行模2除数
时间: 2023-06-19 21:10:55 浏览: 240
crc校验原理,包括CRC的校验原理和方法
在进行模2除数运算之前,需要先将被除数和除数都转换为二进制形式。假设被除数为D(x)=1011001,除数为G(x)=x4+x3+x+1,则需要在D(x)高位补0,使得D(x)的总位数等于G(x)的次数加1,即:
```
D(x) = 01011001
G(x) = 10011
```
接下来,从D(x)的最高位开始,依次取出和G(x)同样位数的比特进行异或运算。如果结果为1,则将G(x)对应的比特全部异或到D(x)上;如果结果为0,则直接将G(x)对应的比特全部异或到D(x)上。然后将D(x)向左移动一位,继续进行上述操作,直到D(x)的位数小于等于G(x)的次数为止。
最终,余数就是最后一次模2除数运算的结果,这里余数为R(x)=111。将R(x)附加在原来的被除数后面,得到校验码为:
```
01011001111
```
其中,最后四位1111就是余数R(x)。发送方将原来的数据和校验码一起发送给接收方,接收方在收到数据后,也需要进行一次模2除数运算,如果余数为0,则表示数据没有出错;否则表示数据出现了错误。
阅读全文