CRC码是由两部分组成,前部分是信息码,就是需要校验的信息,后部分是校验码,如果CRC码共长n个bit,信息码长k个bit,就称为(n,k)码。 它的编码规则是:
1、首先将原信息码(kbit)左移r位(k+r=n)
2、运用一个生成多项式g(x)(也可看成二进制数)用模2除上面的式子,得到的余数就是校验码。
非常简单,要说明的:模2除就是在除的过程中用模2加,模2加实际上就是我们熟悉的异或运算,就是加法不考虑进位,公式是:
0+0=1+1=0,1+0=0+1=1
即‘异’则真,‘非异’则假。
由此得到定理:a+b+b=a 也就是‘模2减’和‘模2加’直值表完全相同。
有了加减法就可以用来定义模2除法,于是就可以用生成多项式g(x)生成CRC校验码。
例如: g(x)=x4+x3+x2+1,(7,3)码,信息码110产生的CRC码就是:
11
11101 | 110,0000
111 01
1 0100
1 1101
1001
余数是1001,所以CRC码是110,1001
标准的CRC码是,CRC-CCITT和CRC-16,它们的生成多项式是:
CRC-CCITT=x^16+x^12+x^5+1
CRC-16=x^16+x^15+x^2+1
继续阅读与本文标签相同的文章
上一篇 :
CPU并行编程概述(上)
下一篇 :
共享出行变形记
-
华为轮值董事长郭平:虚拟技术创造现实价值
2026-05-14栏目: 教程
-
微软Windows 10 11月更新准备就绪!
2026-05-14栏目: 教程
-
花3000块发明最牛输入法!打字速度冠绝群雄,现在却被遗忘了
2026-05-14栏目: 教程
-
二进制、八进制、十六进制在现实当中有什么意义?
2026-05-14栏目: 教程
-
无需屏幕、裸眼3D,今后广告等可直接成像在空气中
2026-05-14栏目: 教程
