海明码的计算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
海明码的计算:
码距:是不同码字的海明距离的最小值。
(1)可查出多少位错误:可以发现“≤码距-1”位的错误
(2)可以纠正多少位错误:可以纠正“<码距/2”位的错误,因此如果要能纠正n位错误,则所需最小的码距是:2n+1。
计算:海明码是放置在2的幂次位上的即1,2,4,8,16,32, 而对于信息位为m的原始数据,需加入k位的校验码,它满足m+k+1 海明码的求法: 一、有一种简单的方法,则是从第1位开始,遇到校验位留下空格。如原始信息为101101100,并采用偶校验: 1 2 3 4 5 6 7 8 9 10 11 12 13 二、然后概据以下公式填充校验位:1,2,4,8 B1=B3⊕B5⊕B7⊕B9⊕B11⊕B13=1⊕0⊕1⊕0⊕1⊕0=1 B2=B3⊕B6⊕B7⊕B10⊕B11=1⊕1⊕1⊕1⊕1=1 B4=B5⊕B6⊕B7⊕B12⊕B13=0⊕1⊕1⊕0⊕0=0 B8=B9⊕B10⊕B11⊕B12⊕B13=0⊕1⊕1⊕0⊕0=0 三、最后将结果填入,得到结果: 1 2 3 4 5 6 7 8 9 10 11 12 13 海明码的纠错:如下给出一个加入了校验码的的信息,并说明有一位的错误,要找出错误位: 1 2 3 4 5 6 7 8 9 10 11 12 13 将B1,B2,B4,B8代入上式的公式中: B1=B1⊕B3⊕B5⊕B7⊕B9⊕B11⊕B13=1⊕1⊕0⊕1⊕0⊕0⊕0=1 B2=B2⊕B3⊕B6⊕B7⊕B10⊕B11=1⊕1⊕1⊕1⊕1⊕0=1 B4=B4⊕B5⊕B6⊕B7⊕B12⊕B13=0⊕0⊕1⊕1⊕0⊕0=0 B8=B8⊕B9⊕B10⊕B11⊕B12⊕B13=0⊕0⊕1⊕0⊕0⊕0=1 然后从高位往下写,B8+B4+B2+B1=1011=11(十进制)即11位出错。