****** 三十 ******、软设笔记【计算机体系结构】-循环冗余校验码(CRC)

 循环冗余校验码(CRC)
  广泛地在网络通信及磁盘存储时采用。


  1.多项式
  在循环冗余校验(CRC)码中,无一例外地要提到多项式的概念。一个二进制数可以以一个多项式来表示。如1011表示为多项式X3 + X1 + X0 ,如果把这里的X替换为2,这个多项式的值就是该数的值。从这个转换可以看出多项式最高幂次为n,则转换为二进制有n+1位,


  2.编码组成
  编码的组成是由K为信息码,加上R位的校验码。


  3.校验码的生成
  校验码的生成步骤如下:
  (1)将K位数据C(x)左移R位,给校验码留下空间,得到移位后的多项式C(X) x X的R次方。
  (2)将这移位后的信息多项式除以生成多项式,得到R位的余数多项式。
  (3)将余数作为校验码嵌入信息位左移后的空间。




  循环冗余校验码的纠错能力取决于K值和R值。在实践中,K值往往取得非常大,远远大于R的值,提高了编码效率。在这种情况下,循环冗余校验就只能检错不能纠错。
  一般来说,R位生成多项式可检测出所有双错,奇数位错和突发错位小于或等于R的突发错误。

猜你喜欢

转载自blog.csdn.net/qq_40223688/article/details/80308819