差错检错和纠正

(一)误码控制的基本原理

利用信息数据和附加数据之间的特定关系来实现检错和纠错,即在数据码的基础上增加一些冗余码。

码字(n位)=数据码(m位)+冗余码(r位)

定理1:如果d>=2t+1,则该编码可纠正t个错误

定理2:如果d<=e+1,则该编码可检测出任何e个错误

【例1】偶校验:使每个码字中都有偶数个1

按冗余码的控制功能分:纠错码  检错码

纠错检错的常用方法:海明码,奇偶校验码,循环冗余编码

【例2】计算纠错码的冗余位数

(二)纠错码:海明码:可纠正一位错



(三)检错码:循环冗余码--CRC码

检测能力:所有单个错、奇数个错和离散的二位错


附:字符填充的例题

在一个数据流中有下列数据片段:A B ESC C ESC FLAG FLAG D,使用字节填充方法,填充之后的结果是什么?

答:经过填充之后的字节串是:ABESCESC CESCESCESCFLAGESCFLAG D,其中红色的为填充的转义字符。

理解:给ESC和FLAG前面都加ESC

你可能感兴趣的:(差错检错和纠正)