上QQ阅读APP看书,第一时间看更新
1.4.3 奇偶校验码
二进制信息在传送时,可能因外界干扰或其他原因而发生错误,即可能有的1变为0,或者有的0变为1。奇偶校验码(Parity Check Code)可以检测代码在传送过程中是否出现错误。
奇偶校验码由两部分组成:一部分是信息位,即需要传递的信息本身,可以是位数不限的任何一种二进制码,如自然二进制码、BCD码、ASCII等;另一部分是奇偶校验位,仅有一位,可以添加在信息位的前面或后面。在编码时,需根据信息位中1的个数决定添加的奇偶校验位是1,还是0,有下列两种方式。
(1)使每一个码组中信息位和奇偶校验位的“1”的个数之和为奇数,称为奇校验。
(2)使每一个码组中信息位和奇偶校验位的“1”的个数之和为偶数,称为偶校验。
带奇偶校验位的8421BCD码如表1.4.3所示。
表1.4.3 带奇偶校验位的8421BCD码
奇偶检验码的数据传送原理如图1.4.1所示。在发送端,编码器根据信息位编码产生奇偶校验位,形成奇偶检验码发往接收端;在接收端,检测器检查代码中含“1”个数的奇偶,判断信息是否出错。例如,当采用偶校验时,若收到的代码中含有奇数个“1”,则说明发生了错误。但判断出错后,并不能确定是哪一位出错,也就无法纠正。因此,奇偶检验码只有检错能力,没有纠错能力。
图1.4.1 奇偶检验码的数据传送原理
其次,奇偶校验码只能发现单个错误,不能发现双错(即两位同时出错的情况)。但由于数据传送中出现单错的概率远远高于双错,因此,奇偶校验码还是很有实用价值的。加之它编码简单、容易实现,因而在数字系统中被广泛采用。