美文网首页计算机系统基础
关于海明码的原理和计算

关于海明码的原理和计算

作者: Julianlee107 | 来源:发表于2017-09-19 22:46 被阅读0次

海明(汉明)码是广泛采用的一种有效的校验码,它实际上是一种多重奇偶校验码。

海明码的原理就是在有效信息位中加入几个校验位形成海明码,并把海明码的每一个二进制分配到几个奇偶校验中。当某一位出错的时候,不仅能检错,还能发现出错位的位置。
   假设校验位有k位,那么校验码最多有2k个,显然其中有一个校验码是正确的,那么就能校验出2k-1个错位。所以,如果能满足一个n位数n+k<=2k-1,则在理论上即可判断出哪一位数出错。

编码步骤

  1. 首先确定需要几位校验位,2k= k+n+1,其中k为校验位,n为数据位。求出最小的k即为校验位的位数。
  2. 确认校验位的分布
    规定校验位Ki在海明码位号为2i-1

例如若有信息为1011的数,则海明码的校验码的分布为:101K31K2K1
  1. 分组以形成校验关系
    每个数据位由多个校验位进行校验,但是需要满足被校验数据的海明码位号等于校验该数据位的各校验码海明码位号的和。(PS:校验码不需要被校验)
    接上例:在海明码中第三位的D1,需要有K1,K2进行校验,D2由K1,K3,D3由K2,K3,D4由K1,K2,K3检验
  2. 校验位取值
    校验位的取值由分组决定。
    K1=D1⊕D2⊕D4
    K2=D1⊕D3⊕D4
    K3=D2⊕D3⊕D4
    注:⊕为异或运算

K1=1
K2=0
K3=0
所以,1011的海明码为1010101

  1. 海明码的校验原理
    每个校验组分别利用校验位和参与该校验位的数据位进行奇偶校验检查,构成K个校验方程。
    接上例
    S1=K1⊕D1⊕D2⊕D4
    S2=K2⊕D1⊕D3⊕D4
    S3=K3⊕D2⊕D3⊕D4
    若Si =1,表示覆盖了海明码中所有位置号二进制表示里倒数第i位为1的数据。如S3=1,则表示着位置号为100,110,101,111等数据。
    例如:若S3S2S1=000表示这无错,S3S2S1=101,表示着海明码中第五位数据有错误,只需取反即可改正。

【例】使用海明码进行纠错,7位码长(x7x6x5x4x3x2x1),其中4位数据,监督关系式为: C0 = x1+x3+x5+x7 C1 = x2+x3+x6+x7 C2 = x4+x5+x6+x7 如果接收到的码字为1000101,那么纠错后的码字是()
解:由题可得:
C0=1,C1=0,C2=1,即C2C1C0=101。所以海明码中第五位数据出错,取反可得,10#1#0101

因为在网上查阅汉明码资料的时候,发现网上部分题和博客对汉明码的解释千奇百怪,我认为其中有些错误,所以就照着百科自己理解梳理了一遍。
有的博客里加校验位是从左开始算位数,有的直接添加在末尾。所以,要是有大佬能解释一下为什么不统一,麻烦请私信我。

相关文章

  • 关于海明码的原理和计算

    海明(汉明)码是广泛采用的一种有效的校验码,它实际上是一种多重奇偶校验码。 海明码的原理就是在有效信息位中加入几个...

  • 关于海明码的原理和计算

    综合上面我们求一下信息1011的海明码是多少? 答:我们知道信息位有4位,即为n=4,求得公式中校验位K=3。所以...

  • 软考中级软件设计师笔记

    计算机基础 海明码的校验已知数据信息为16位,最少应附加( )位校验位,以实现海明码纠错。公式 2^r-r≥...

  • 海明码

    海明码是一种可以纠正一位差错的编码,它是利用校验字段来检测数据中是否包含错误的一种方式。 海明码编码方法 计算校验...

  • 超级无敌简单易懂的海明码的校验和纠错原理与实现

    最近和朋友的聊天涉及到了海明码纠错,先来康康海明纠错码到底是什么 海明码 Hamming Code,电信领域的一种...

  • 海明码编码计算和纠错、CRC校检码计算

    一、海明码检错/纠错基本思想 海明码(Hamming Code)是一个能够有多个校验位。具有检測并纠正一位错误代码...

  • 计算机知识回顾:海明码

    更多分享:http://www.cherylgood.cn 海明码,又名汉明码,是在电信领域的一种线性调试码,以发...

  • 海明码的编码和校验方法

    海明码(也叫汉明码)具有一位纠错能力。本文以1010110这个二进制数为例解释海明码的编码和校验方法。 编码 确定...

  • 2计算机组成与结构

    考点分部 计算机硬件组成、运算器、控制器奇偶校验、循环冗余校验、海明码指令系统:指令操作数寻址方式、CISC和RI...

  • 计网复习

    不会的 IP首部CRC海明码 题型 综合 合肥大学计算机网络重庆大学计算机网络2011-2012年期末试题(附考点...

网友评论

    本文标题:关于海明码的原理和计算

    本文链接:https://www.haomeiwen.com/subject/whvgsxtx.html