海明码校验(纠错,容错)校验计算公式与在线计算器
待校验位宽(占用字节数)
已校验位宽(占用字节数)
检验码(hex)(位宽)
待校验类型
已校验类型
位校验方式
结果高位补0
输出分组

CTRL+A :选中全部,CTRL+C:复制,CTRL+V:粘贴。 使用必读本站支持微信扫码登录了除了计算器还有这些功能可用

分类: 校验计算 标签:海明码校验纠错容错 工具ID:141 阅读:12305 收藏

输入2进制或16进制的数据,点击正向计算或反向计算,可求出海明码校验数据或原数据。

【注意】

  • 输入数据要与选择的数据类型一致,2进制(bin)或16进制(hex)。
  • 左侧补0,是为了使输出数据组成为整数字节。
  • 2进制每4位用空格隔开是为了读取方便,当输入数据有空格时,不影响计算结果。

【海明码简介】

海明码是由Richard Hanming于1950年提出的,它具有一位纠错能力。当已校验数据的任一位发生错误,都不影响解码出来的数据。

【海明码的计算方法】
设欲检测的二进制代码为n位,为使其具有纠错能力,需要添加k位检测位,组成n+k位的代码。为了能准确对错误定位以及指出代码没错,新添加的检测位数k应满足:2k ≥ n+k+1
由此关系可求得不同代码长度n所需要检测位的位数k。
海明码的编码规则如下:

设k个校验位为Pk,Pk-1,·····,P1, n个数据位为 Dn-1,Dn-2,·····,D1,D0,对应的海明码为Hn+k,Hn+k-1,······,H1,那么

(1)Pi在海明码的第2i-1位置,比如P1,21-1=1,所以在H1的位置。

(2)海明码中的任何一位都是由若干个校验位来校验的。其对应关系如下:被校验的海明位的下标等于所有参与校验该为的校验位的下标之和,而校验位由自身校验。比如H12,下标为12,等于8+4,所以是海明码的第8、第4位校验位来检测的。

举例

对于8位的数据位,进行海明校验需要4个校验位(2k ≥ n+k+1,24 ≥ 8+4+1)。令数据位为D7,D6,D5,D4,D3,D2,D1,D0,校验位为P4,P3,P2,P1,形成的海明码为H12,H11,····,H1,则编码过程如下:

(1)确定D与P在海明码中的位置

H12H11H10H9H8H7H6H5H4H3H2H1
D7D6D5D4P4D3D2D1P3D0P2P1

(2)计算校验位

这里主要讲一种简易的计算校验位的方法:

第一个校验位P1是位于H1的位置,它检验的位置是H1,H3,H5,H7,H9,H11,也就是读一位,隔一位,···

第二个校验位P2是位于H2的位置,它检验的位置是H2,H3,H6,H7,H10,H11,也就是读两位,隔两位,···

第三个校验位P3是位于H4的位置,它检验的位置是H4,H5,H6,H7,H12,也就是读四位,隔四位,···

第四个校验位P4是位于H8的位置,它检验的位置是H8,H9,H10,H11,H12,也就是读八位,隔八位,···

以此类推,就可以轻易得知,第n位校验位校验的海明位是,从自身开始,读2n-1位,隔2n-1位,·····,直到读到尽头。

知道校验位后 ,对校验位对应的数据进行异或运算(默认是偶校验),即:

P1=D0⊕D1⊕D3⊕D4⊕D6

P2=D0⊕D2⊕D3⊕D5⊕D6

P3=D1⊕D2⊕D3⊕D7

P4=D4⊕D5⊕D6⊕D7

若采用奇校验,则将各校验位的偶校验值取反即可。

(3)检验错误。对使用海明码的数据进行校验差错检测很简单,根据上面的方法,我们可以很轻易得知每个校验位负责检测的海明位校验码(P4-P1)和原数据,当求出的原数据再次进行校验得到新校验数据(NP4-NP1),然后进行以下运算:

G4=NP4⊕P4

G3=NP3⊕P3

G2=NP2⊕P2

G1=NP1⊕P1

当结果(G4-G1)全为0是表示数据没有错误,否则即出现了错误。当发生错误时,将G4G3G2G1的值转化为十进制即可知道发生错误的位置,如G4G3G2G1=0110,即表示H6这个位置的数据发生了错误,只要将其取反即可纠正。



 

最新搜索: 118.20 11aadd 12 17 0.05 12*9 12*7 12+10+15 12越28号 120.71395 121°38′48 12196 12323434发 125 124 4x²+22x+40 1350 138 148°01′05″ 15H0 16进制(CRC8) 16进制位 16进制异 16進制字節 16#255 17.5 170 1728立方根 1798646400 18mg 1977年2月18号 19°31′42′ 圆弧面积弧 1987年06月08 1991027517 2分 2阶 2.4223 2.11 2109 219 220 239°49′÷2 239.03 23x^2 2400 24/25 25.3份 24470 2576 5°59′31″ 2786 2882 2E 01 73 0 2x^4+x^2+3 2x² 3x=122 3点que\\\\\\\\ 3锥台 3/4的平方 30°10'41 3074477781 32767 33/16 338 335 3350 35 10 35.15 3636 36KV 370000 37/36/51 39,39,35,3 3F57 3x^2+12x+5 4” 4度46分18.8秒 4/5 41 DE D7 C 4145 花椒 54 56 4F 5 钢材表面积 已知年金、现值和期数 立式 封头 片咯 外接 42B6BC45 473 4859 4895 4t+5t+1 5环电阻 5.2487874329175E-7 5357002415 5500000000 576 59.4 5ef6h 6格卡方 6.2k 67.311 6.64 6599

对此计算器不满意或未找到合适的计算器?本网站免费订制专用计算器…… 报错/建议 讨论专区

相关推荐