互联网IT百科

CRC算法校验步骤是什么

2023-07-12
董某人IT讲师

擅长计算机理论和IT技术

1CRC校验采用多项式的编码方法,设要发送的数据码有k位,则该数据码对应的多项式F(x)有k项,k的取值只能为0或1;

2G(x)为发送端和接收端预先约好的生成多项式。G(x)的选取对校验效果起着关键的作用,使用较多的生成多项式G(x)有CRC-16、CRC-CCITT、CRC-32等;

3R(x)为生成的r阶冗余码多项式,R(x)的项数比G(x)要少一项。R(x)的计算方法为以F(x)作为被除数,先将F(x)乘x′即左移r位,再以G(x)作为除数作模2运算。

4CRC校验算法中,一帧数据有n=k+r位,前k位为数据码,后r位为冗余码。由步骤三计算出R(x)后,把R(x)附在F(x)后面形成要传送的CRC数据,其格式为[F(x),R(x)]。

5接收端接收到的数据F′(x)根据模2除法对G(x)进行检验。

6若F′(x)modG(x)结果为0,表明数据在传送过程中无差错,接收端就接收该数据;若F′(x)modG(x)结果不为0,则表明数据传送有错误,接收端丢弃该数据。

引用公司