设K为有效信息的位数,r为校验位的位数则整个碼字的位数N应满足不等式:N=K+r ≤2r-1(是2的r次方)。若要求海明码的码距是多少能检测出2位错误则再增加1位校验位。
例如:二进制编码位共8位所以K=8,可以得出校验位r的位数为4位
校验位P1=2^(1-1)其他校验位同理。
P8校验数据位 H8H9,H10H11,H12…(注意:P的下标对应的是海明码的码距是多少的下标)
Pr+1=所有位求异或
将数据填入表中即可得到最终的海明码的码距是多少,但是为了检验2给错误我们再把求得的海明码的码距是多少的所有位在求一次异或
现在假设第5位出错了,也就是第五位在传输的过程中被改为“1“了(D5由0变为1)即得到的数据为(1 1011 )。现在要找出错误的位置(假设现在不知道出错的位置)
设K为有效信息的位数,r为校验位的位数则整个碼字的位数N应满足不等式:N=K+r ≤2r-1(是2的r次方)。若要求海明码的码距是多少能检测出2位错误则再增加1位校验位。
例如:二进制编码位共8位所以K=8,可以得出校验位r的位数为4位
校验位P1=2^(1-1)其他校验位同理。
P8校验数据位 H8H9,H10H11,H12…(注意:P的下标对应的是海明码的码距是多少的下标)
Pr+1=所有位求异或
将数据填入表中即可得到最终的海明码的码距是多少,但是为了检验2给错误我们再把求得的海明码的码距是多少的所有位在求一次异或
现在假设第5位出错了,也就是第五位在传输的过程中被改为“1“了(D5由0变为1)即得到的数据为(1 1011 )。现在要找出错误的位置(假设现在不知道出错的位置)