一、奇偶校验码
1、奇偶校验码的原理:
奇偶校验码是 一种增加二进制传输系统最小距离的简单和广泛采用的方法。是一种通过增加冗余位使得码字中1的个数恒为奇数或偶数的编码方法,它是一种检错码。奇偶校验码由n-1位信息元和1位校验元组成,可以表示成为(n,n-1)。如果是奇校验码,在附加上一个校验元以后,码长为n的码字中“1”的个数为奇数个;如果是偶校验码,在附加上一个校验元以后,码长为n的码字中“1”的个数为偶数个。
设:如果一个偶校验码的码字用A=[an-1,an-2,…,a1,a0]表示,则:(1)式中 为校验元,“+”为模二和(以后也这样表示,请注意)。
式(1)通常被称为校验方程。利用式(1),由信息元即可求出校验元。另外,如果发生单个(或奇数个)错误,就会破坏这个关系式,因此通过该式能检测码字中是否发生了单个或奇数个错误。
二、流程
1、奇校验:就是让原有数据序列中(包括你要加上的一位)1的个数为奇数
1000110(0)必须添0。原来有3个1已经是奇数了所以添上0之后1的个数还是奇数个。
2、偶校验:就是让原有数据序列中(包括你要加上的一位)1的个数为偶数
1000110(1)必须加1。原来有3个1要想1的个数为偶数就只能再添加11.奇偶校验概念
奇偶校验码是一种最简单而行之有效的数据校验方法。
奇偶校验码的实现方法是在每个被传送码的左边或右边加上1位奇偶校验位"0"或"1",若采用奇校验位,只需把每个编码中1的个数凑成奇数;若采用偶校验位,只要把每个编码中1的个数凑成偶数。表3.4示出了8421码的奇偶校验码。又如 ASCII 码是用7位二进制表示的编码,其校验位一般加在最高位。已知大写英文字母 A 的 ASCII 码是"1000001",若采用奇校验,最高位加"1",该码就变成8位代码"11000001",此时该码字中"1"的个数为奇数3;若采用偶校验,最高位加"0",该码就变成8位代码"01000001",此时该码字中"1"的个数为偶数2。交叉奇偶校验
计算机在进行数据块传送时,不仅每一个字节有一个奇偶校验位做横向校验,而且数据块中的全部字节的同一位也可设置一个奇偶校验位做纵向校验,这种横向、纵向同时校验的方法称为交叉校验。