错误检测和纠正

时间:2013-08-17 14:40:24

标签: hamming-code

我的消息位为10011010,因此代码字为0110,现在代码字为011100101010

假设错误在第10位并且变为011100101110,因此找到奇偶校验位:

p1=1+3+5+7+9+11=010111=even number of 1 therefore=0
p2=2+3+6+7+10+11=110111=1
p4=4+5+6+7=1001=0
p8=8+9+10+11+12=01110=1

与消息相比,4和8位置的奇偶校验是假的,即4 + 8 = 12,但实际上我们在10位中产生了错误。我在哪里弄错了?

1 个答案:

答案 0 :(得分:1)

它有点不同。检查奇偶校验时,不要使用奇偶校验位对其进行计数(现在计算它们)。所以:

p1 = 3+5+7+9+11 = 10111 = 0 (OK)
p2 = 3+6+7+10+11 = 10111 = 0 (WRONG)
p4 = 5+6+7 = 010 = 1 (OK)
p8 = 9+10+11+12 = 1110 = 1 (WRONG)

所以2+8 = 10