循环冗余校验码

循环冗余校验码

基本思想

设计一个数 如8 被4整除余数0,如数据7不能被4整除余数3

数据发送、接受约定一个“除数”

K个信息位+R个校验位作为“被除数”,添加校验位后保证除法余数位0

收到数据后,进行除法检查余数是否为0

题目:设生成多项式为G(X)=x3+x2+1,信息码为101001,求对应的CRC码

  1. 转换二进制系数

1101这个为除数

K=信息码的长度=6,R=生成多项式最高次幂=3——》校验码位数N=K+R=9

  1. 移位 计算机处理实现:信息码左移R位,低位补0

  1. 对移位后的信息码进行模2除法,产生余数

    模2除运算理解:被除数最高位1则商1,之后模2减,模2减和模2加效果一样(异或运算)最终得到一个余数(位数只比除数少一位)

    得到的信息位+余数得到CRC

  2. 检错和纠错

    接受到的数据用1101进行模2除余数为000,余数不为0则出错

总结

循环冗余校验码有一定的纠错功能

K个信息位,R个校验位,若生成多项式选择得当,且2R>=K+R+1,则CRC码可纠正1位错

特点

可检测出所有奇数个错误

可检测出所有双比特的错误

可检测出所有小于等于校验位长度的连续错误

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值