CRC除法
来源:互联网 发布:java图形界面编程视频 编辑:程序博客网 时间:2024/05/01 08:26
CRC里的除法不是简单的二进制除法,CRC里的除法运算规则如下所示:
1111_000 被除数
1101 除数
----------------------
够除数的位数,商等于1
0010 (余数,通过除数与被除数前4位求异或得到)
------
100 (把被除数第5位挪下来)
1101 除数
------
位宽不够,商等于0
1000 把被除数第6位挪下来
1101 除数
------
够除数的位数,商等于1
0101 余数(仍然是通过异或操作得到)
------
1010 把被除数第7位挪下来
1101 除数
------
够除数的位数,商等于1
0111 余数(仍然通过求异或得到)
------
被除数共7位,除完
所以得到商1011,余数111.
再举个例子:已知信息位1100,生成多项式G(x)= x3 + x + 1,求CRC码
M(x)= 1100
M(x)* x3 = 1100000
G(x)= 1011
M(x)* x3 / G(x)= 1110 + 010/1011
R(x)= 010
CRC码为:M(x)* x3 + R(x)= 1100000 + 010 = 1100010
其原理是:CRC码一般在k位信息位之后拼接r位校验码位生成。编码步骤如下
- 将待编码的k位信息表示成多项式M(x);
- 将M(x)左移r位,得到M(x)*2r;
- 用r+1位的生成多项式去除M(x)*xr得到余数R(x);
- 将M(x)*xr与R(x)作模2加(不是很明白),得到CRC码
- CRC除法
- 摸2除法与crc校验
- CRC校验之模2除法(学习笔记、备忘)
- CRC
- CRC
- CRC
- crc
- CRC
- CRC
- CRC
- CRC
- crc
- CRC
- CRC
- CRC
- CRC
- crc
- CRC
- dhtmlxGrid加载数据
- 黑马之前,c#绘制点,线,面
- TaskTracker LaunchTask过程与CleanTask过程
- Hadoop集群监测工具——ganglia安装实例
- 希尔排序
- CRC除法
- 驱动程序无法通过使用安全套接字层(SSL)加密与SQL Server 建立安全连接
- 冒泡排序
- SQL Server的链接服务器技术总结
- RADIO,CHECKBOX,SELECT实现readonly的方法
- GNU ld链接脚本lds简单教程
- vc++对话框
- MFC 组合框的使用
- Database Components Information Table - DBA_REGISTRY