一、奇偶校验码 奇偶校验可描述为:给每一个码字加一个校验位,用它来构成奇性或偶性校验
因此,若有一个码元是错的,就可以分辨得出,因为奇偶校验将成为奇性
奇偶校验编码通过增加一位校验位来使编码中1 的个数为奇数(奇校验)或者为偶数(偶校验),从而使码距变为2
因为其利用的是编码中1 的个数的奇偶性作为依据,所以不能发现偶数位错误
一个二进制码字,如果它的码元有奇数个1,就称为具有奇性
例如,码字“10110101”有五个1,因此,这个码字具有奇性
同样,偶性码字具有偶数个1
再以数字0 的七位ASCII 码(0110000)为例,如果传送后右边第一位出错,0 变成1
接收端还认为是一个合法的代码0110001(数字1 的ASCII 码)
若在最左边加一位奇校验位,编码变为10110000,如果传送后右边第一位出错,则变成10110001,1 的个数变成偶数,就不是合法的奇校验码了
但若有两位(假设是第 1、2 位)出错就变成10110011,1 的个数为5,还是奇数
接收端还认为是一个合法的代码(数字3 的ASCII 码)
所以奇偶校验不能发现
奇偶校验位可由硬件电路(异或门)或软件产生: 偶校验位 an =a0⊕a1⊕a2⊕…⊕an-1, 奇校验位 an =NOT(a0⊕a1⊕a2⊕…⊕an-1)
在一个典型系统里,在传输以前,由奇偶发生器把奇偶校验位加到每个字中
原有信息中的数字在接收机中被检测, 如果没有出现正确的奇、偶性,这个信息标定为错误的,这个系统将把错误的字抛掉或者请求重发
在实际工作中还经常采用纵横都加校验奇偶校验位的编码系统--分组奇偶校验码
现在考虑一个系统, 它传输若干个长度为m 位的信息
如果把这些 信息都编成每组n 个信息的分组,则在这些 不同的信息间 ,也 如对 单 个信息一样,能够 作奇偶校验
图 4 中n 个信息的一个分组排 列成矩