前言:奇偶校验码是一种增加二进制代码传输距离最简单和最广泛的方法,通过增加冗余位使码字中“1”的个数恒为奇数或者偶数。
码距是指一个编码系统中,任意两个合法编码之间至少有多少个二进制位不同。例如:4位8421码在传输过程中,任意一位或者多位编码发生改变都会变成另一个合法编码,因此这种编码毫无检测能力。
奇偶校验是一种简单有效的方法,通过在编码中增加一个校验位,使得在编码中“1”的个数为奇数(奇校验)或者为偶数(偶校验),从而使码距变为2。
奇偶校验码只能检测奇数位出错的情况,不能检测偶数位出错情况,并且不具有纠错能力。
以4位8421码为例,先计算4位数据位中1的个数,最后决定添加检验位“0”或者“1”,使得整体(数据位+校验位)中“1”的个数为奇数(奇校验)或者偶数(偶校验)。
十进制数8421码奇校验偶校验000000000 10000 0100010001 00001 1200100010 00010 1300110011 10011 0401000100 00100 1501010101 10101 0