首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >汉明距离理解问题

汉明距离理解问题
EN

Stack Overflow用户
提问于 2015-02-03 20:57:38
回答 1查看 209关注 0票数 0

我目前正在尝试理解汉明代码-或者特别是用于检测和修复错误比特的汉明距离。hamming distance

我很难理解汉明的距离。我知道我正在比较不同的比特单词,并找到使这些单词不同的比特数(->hamming距离)-但我正在比较的这些单词是什么?

例如: word= 0110 1001bit1(偶)奇偶校验位添加在末尾: 0110 (第一奇偶校验位1-4,第二位5-8,第三位3,4,5,6,第四位0,1,7,8)。=>创造了(新的)单词: 0110 0001 0110。

我现在用奇偶校验位检查字了吗?word1: 0110 (位1-4 +奇偶校验位1)。word2: 0001 1(位5-8 +奇偶校验位2)。word3: 1000 1(位3、4、5、6+奇偶校验位3)。word4: 0101 0(位0,1,7,8 +奇偶校验位4)。

word1->word2:汉明距离4. word2->word3:汉明距离3. word3->word4:汉明距离4

还是我说的完全错了?

EN

回答 1

Stack Overflow用户

发布于 2015-02-03 21:05:59

您应该(根据您的描述)使用Hamming Code,而不是Hamming Distance。它们是不同的东西。至于检查错误,来自Hamming code上的维基百科

要检查错误,请检查所有奇偶校验位。称为错误校正子的错误模式识别错误中的比特。如果所有的奇偶校验位都是正确的,则不存在错误。否则,错误奇偶校验位的位置之和识别错误位。例如,如果位置1、2和8中的奇偶校验位指示错误,则位1+2+8=11出错。如果只有一个奇偶校验位指示错误,则奇偶校验位本身就是错误的。

汉明距离在海明码中的作用是解释为什么海明码只能纠正1比特和检测2比特的错误。通过应用汉明编码,所有有效字之间的汉明距离为3。任何翻转1比特的错误都将导致一个字与正确的字相距1-汉明距离。可以通过找到最近的正确单词来纠正它。任何翻转2位的错误都会导致一个字与正确的字相距2个汉明距离,但也会导致另一个正确的字与另一个正确的字相距2个汉明距离。因此,只能检测到2个故障。由于所有正确的字间隔3个距离,3位或更多位的故障不能被检测到。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28299515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档