快速学会海明校验
快速学会海明校验
简介:本文旨在用最简洁的篇幅向大家介绍,如何快速的学会海明校验,并会做相关的题目。
海明码简介:海明码是一种多重(复式)奇偶检错系统,用于检错和纠错。
原理:在 k
位数据中增加 r
位校验位构成 n + k
位码字,附加的 r
位校验位能够均匀的拉大,每个校验位对码字中的若干位进行奇偶校验,这样当某一位出错后,会引起几个校验位的值的变化。这样既能检测出错误,又可以位纠错提供依据。
计算方法:
我们以一个具体的题目为例子来看:
真题演练
对于01100111
,计算他的海明码。
第一步:
计算长度
通过公式计算海明码的校验码的长度r
:
- 校验位数:假设有
r
位校验码,k
位有效数据位,则有关系:2r - 1 ≥ k + r
k = 8
可以得到r=4
第二步:
画表格
编码前为:01101110
0 | 1 | 1 | 0 | x | 1 | 1 | 1 | x | 0 | x | x | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
二进制 | 1100 | 1011 | 1010 | 1001 | 1000 | 0111 | 0110 | 0101 | 0100 | 0011 | 0010 | 0001 |
海明码 | H12 | H11 | H10 | H9 | H8 | H7 | H6 | H5 | H4 | H | H2 | H1 |
对应位 | D8 | D7 | D6 | D5 | P4 | D4 | D | D2 | P | D1 | P2 | P1 |
G1组 | √ | √ | √ | √ | √ | |||||||
G2组 | √ | √ | √ | √ | √ | |||||||
G组 | √ | √ | √ | √ | ||||||||
G4组 | √ | √ | √ | √ |
规则为:计算出每一位的二进制数,然后对于G1那么就选择出对应位为D的,然后对应的H的二进制第一位为1的,在下面打上√。
异或的原理为:
P1 = D7⊕D5⊕D4⊕D2⊕D1 = 1
详细过程:1⊕0⊕1⊕1⊕0=1
P2 = D7⊕D6⊕D4⊕D⊕D1 = 0
P = D8⊕D4⊕D⊕D2 = 1
P4 = D8⊕D7⊕D6⊕D5 = 0
第三步:
获得海明码,将P的位置替换好。
011001111001
第四步:
海明码的验错: 原理:
- 将对应的校验位进行异或运算,即
Si = Pi ⊕ Pi’
- 若四位校验码为
0000
,则表明该码字传输无误 - 若四位校验码不全为零,则将校验码的结果按低位到高位排布,即
S4SS2S1
,将此校验码转化成十进制数,表示海明码对应位数出现了错误。
假设发送海明码为1100110
,接受海明码为1100100
,这个时候GG2G1=000
,信息正确,从中提取有效信息为1101
(也就是去掉P
位之后,剩下的D
位)
若海明码位1110110
(D4DD2PD1P2P1
),有效信息为1111
(D4DD2D1
)
G = P⊕D2⊕D⊕D4=0⊕1⊕1⊕1=1
G2 = P2⊕D1⊕D⊕D4=1⊕1⊕1⊕1=0
G1 = P1⊕D1⊕D2⊕D4=0⊕1⊕1⊕1=1
对应GG21
=101
(十进制为5
,对应D2
),然后将D2
求反获得信息为1101
。
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
推荐阅读
留言与评论(共有 7 条评论) |
本站网友 辽宁省分析科学研究院 | 10分钟前 发表 |
信息正确 | |
本站网友 盐酸厄洛替尼片 | 15分钟前 发表 |
每个校验位对码字中的若干位进行奇偶校验 | |
本站网友 乱了 | 14分钟前 发表 |
将P的位置替换好 | |
本站网友 避孕贴片 | 18分钟前 发表 |
原理:在 k位数据中增加 r位校验位构成 n + k位码字 | |
本站网友 托希尔 | 15分钟前 发表 |
如有侵权请联系 cloudcommunity@tencent 删除前往查看编码二进制数据系统原理 | |
本站网友 鹰愁涧 | 12分钟前 发表 |
计算方法:我们以一个具体的题目为例子来看:真题演练对于01100111 |