【CRC循环冗余校验-2】crc多项式及校验原理

  1. CRC多项式是为了生成一个除数,这个除数是模二运算的除数
  2. 示例:G(X) = X^{_{5}} + X^{2} + 1, 多项式生成的二进制序列位数是最高次幂加一,即6位,即从第0位开始到第5位,多项式中为0的位已经省略,原式为:G(X) = X^{5} +0^{4} + 0^{3} + X^{2} + 0^{1} + 1(0次幂为1),幂次数也即其位置,即:100101

如上,生成的二进制序列即为crc检验用到的除数,而crc校验码即数据补0后除(模二运算除)以这个除数后的余数,检验码位数比除数少一位,余数不足的位用0补足,数据补0即在原始数据后加上除数位数减一的0.

示例:原始数据:10110011, 多项式:G(X) = X^{4} + X^{3} + 1

           多项式生成除数序列:11001

           原始数据补零:10110011 0000   (除数为五位,故补4个0)

           10110011 0000  除以  11001  =  0100,即校验码:0100

原理:

  • 原始数据+crc校验码发送给接收端,即该序列除以多项式生成的除数得到余数为0
  • 接收端用收到的数据除以多项式生成的除数,若余数为0则数据正确,否则数据出错

应用举例:

数据 aabbcc,校验码4523

数据加上校验一起,校验码(顺序倒置是大小端影响)0000

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值