目录
背景
在进行数据传输时,为了避免数据传输发生错误,需要对数据进行校验,从而产生了一些校验方法。CRC校验便是其中之一。
校验流程如下:
1:数据发送方按照一定的计算方法得到校验码,附在数据串末尾。
2:数据接收方在接受到数据后,按照同样的方法对数据进行校验,如果得到的校验码和收到的校验码相等,则说明传输数据未发生错误。。
以上存在一个问题,如何确定收到数据哪部分是校验码,哪部分是数据串部分,这里需要事先约定好,例如将收到数据最后一个字节约定为校验码。
原理
采用模2除法,数据串除以多项式。
模2除法
校验码的计算采用的是模2除法,所谓模2除法,即每一位除的结果不影响其它位。如下图所示:
更通俗的理解就是二者异或