BG大游奇偶校验码是一种最为简单的校验码,它用来检测数据传输过程中是否发生错误。奇偶校验码的组成:
【结论】采用奇校验方式,若原始数据出现奇数位错误时,将检测出错误;若原始数据出现偶数位错误时,将检测不出错误。
【结论】采用偶校验方式,若原始数据出现奇数位错误时,将检测出错误;若原始数据出现偶数位错误时,将检测不出错误。
【例 5】字符 S 的 ASCII 码编码从低到高依次为 1100101。采用奇校验在下述收到的传输后的字符中,错误不能被检验出来的是( )
假设数据有 m 位,多项式为 G(x),计算附加冗余码(FCS)的步骤:
【注 1】有时候模 2 除法算出来的冗余码位数小于 r,此时要在附加冗余码前补 0 来满足位数。
【例 1】要发送的数据 1101011011,采用 CRC 校验,多项式是 10011,那么最终发送的数据是?
【例 2】在数据传输过程中,若接收方收到的二进制比特序列为 ,CRC 校验生成多项式为 G(x)=x4+x3+1。
(2)若无差错,则发送方发送的二进制比特序列和 CRC 校验码的比特序列分别是什么?若有差错,则指出发送方发送的二进制比特序列和 CRC 校验码的比特序列分别为多少位。
【解】多项式 G(x) = 11001,进行模 2 除法: 除以 11001,所得余数为 0,说明二进制比特序列在传输中没有出现差错。
校验码自己是不需要被校验的,所以需要把自己的序号去掉,然后对自己负责的数据进行异或运算(相当于偶校验),得出校验值。
假设接收方接收到错误的数据为:1110001(序号 5 出错),则先把接受到数据的校验码的值重新算一遍,与正确的对比。
假设接收方接收到错误的数据为:1110001(序号 5 出错),则把校验组内的校验码和数据再进行一次异或运算(偶校验)。