目录
举例说明-码距为1、码距为2:
(1)比如说传输的数据是0和1,这是两个合法的编码,由1转换到0只需要转换一位编码,此时是无法检错的,即码距为1时无法检错;
(2)但如果用00表示0,11表示1,将00转换至11需变化两位,此时如果00变成01,系统是可以检查出错误的,既码距为2可以进行检错;
举例说明2-码距为2:
(1)一楼的蓝色1号会议室;二楼的红色2号会议室;
(2)如果说:去蓝色的2号会议室,系统也是检查不出错误的;因为蓝色的和2号会议室都是正确的信息;
发现错误,并将错误修改正确;
举例说明-码距为2
(1)比如说传输的数据是00和11(00对应十进制0,11对应十进制1),要想将0转换成1,就需要将00转换成11;
(2)那么在转换过程中如果出现了01,就可以检查出错误;
(3)但是纠错时无法判断出这是要将00转11,还是将11转00,所以就不确定该修改01中的0还是1;
(4)所以说码距为2时无法纠错;
举例说明-码距为3
(1)比如说传输的数据是000和111(000对应十进制0,111对应十进制1),要想将0转换成1,就需要将000转换成111;
(2)那么在转换过程中如果出现了011,就可以检查出错误;
(3)进行纠错时也可以判断出,这是想要将000转换为111,所以就会将011中的0纠正为1;
(4)所以说码距大于等于3时,就能进行纠错;
举例说明3-码距为3:
(1)一楼的蓝色1号会议室;二楼的红色2号会议室;
(2)如果说:去一楼蓝色的2号会议室,此时系统就能检查出来错误,一楼和蓝色的都是正确信息,只有会议室名称是错误的,就会自动纠正为一楼的蓝色1号会议室;
两个合法编码之间的距离;
会影响到纠错和检错;
编码机制;
仅可检错,可检测1(奇数)位错;
举例说明
(1)比如传输数据001,进行奇校验时,会在最高位前增加一位校验位,使得编码体系里面1的个数为奇数;
(2)001中,有1个1,所以在校验位加0,变为0001;
(3)此时如果0001变成0101,奇校验就会发现,1的个数不是奇数个了,所以就能检查出错误;
(4)其实通过增加校验位,将数据分为校验部分和数据部分,所以数据发生变化时,数据的校验部分和数据部分都会发生变化;此时相当于码距为2,所以是可以检查出错误的;
仅可检错,可检测1(偶数)位错;
举例说明
(1)比如传输数据001,进行偶校验时,会在最高位前增加一位校验位,使得编码体系里面1的个数为偶数;
001中,有1个1,所以在校验位加1,变为1001,使得1的个数变为2个;
此时如果1001变成1101,偶校验就会发现,1的个数不是偶数个了,所以就能检查出错误;
数据构成;
模2除;
在软考中认为CRC不可以纠错只能进行检错,因为CRC并不能百分百的纠错;只有在生成多项式设计的非常完美的时候,才能进行纠错;
用数据与生成多项式做模2除运算,就生成了校验位,将校验位与数据位写在一起产生一个编码(数据位在前,校验位在后);
仅可检错,可检测多为错;
特点;
校验位与数据位的关系;
可检错,且可纠错;
纠1位错或错位错;
在整个编码的n次方位置设置校验位,可实现多个位置的纠错;