汉明码:
汉明码是由Richard Hanming于1950年提出的,它具有一位纠错能力。
设欲检测的二进制数据为n位,为使其具有纠错能力,需增添k位检测位,组成n+k位的数据。为了能准确对错误定位以及指出数据没错,新增添的检测位数k应满足:
2k≥n+k+1
由此关系求得不同数据长度n所需检测位的位数k,如下表:
数据长度与检测位位数的关系
| n |
k(最小) |
| 1 |
2 |
| 2~4 |
3 |
| 5~11 |
4 |
| 12~26 |
5 |
| 27~57 |
6 |
| 58~120 |
7 |
k确定后,便可由它们所承担的检测任务设定它们在编程后的数据中的位置及取值。
设n+k位编码后的数据自左至右依次编号为第1,2,3,…,n+k位,而将k位检测位记作Ci(i=1,2,4,8,…),分别安插在第1,2,4,8,…,2k-1位上。这些检测位的位置设置是为了保证它们能分别承担n+k位数据中不同数位所组成的“小组”的奇偶检测任务,使检测位和它负责检测的小组中1的个数为奇数或为偶数,具体分配如下:
C1检测的g1小组包含第1,3,5,7,9,11,…位
C2检测的g2小组包含第2,3,6,7,10,11,14,15,…位
C3检测的g3小组包含第4,5,6,7,12,13,14,15,…位
C4检测的g4小组包含第8,9,10,11,12,13,14,15,24,…位
…
这种小组的划分具有如下特点:
1)每个小组gi有一位且仅有一位为它独占,即gi小组独占第2i-1位(i=1,2,3,…)
2)每两个小组gi和gj共同占有一位是其他小组没有的,即每两个小组gi和gj共同占有第2i-1+2j-1位(i,j=

本文介绍了汉明码的概念,包括其纠错原理和编码过程,并通过实例展示了如何对数据进行汉明编码和纠错。同时,文章探讨了汉明码在处理突发性集中错误时的局限性,提出通过交织技术将集中错误分散为随机错误,提高纠错能力。最后,概述了整体的算法流程,从原文到传输再到接收端的解码纠错过程。
最低0.47元/天 解锁文章
3064

被折叠的 条评论
为什么被折叠?



