求数据01101001的海明码
1、确定校验码的位数
2k - 1 >= n + k
此处n为8,解得 k = 4
2、设校验码的4位分别为 P1 , P2 , P3 , P4 , 数据为 D1 , D2 , D3 , ........ , D8 ,相加一共 12 位 ,设为 M1 , M2 , M3 , ........ , M12。
3、确定校验码和数据的位置
Pi = M 2 i-1
P1 = M 2 1-1 = M 2 0 = M 1 , P2 = M 2 2-1 = M 2 1 =M 2 , 以此类推。
注意:此处D1 为末位 ,从右往左数
4、假设出错为 e1 , e2 , e3 , e4
注意:此处e1 为末位 ,从右往左数
代入相对应的数值 :
若为偶校验方式,则 ei 均为 0 时表示接受到的数据无错误 ; 若为奇校验方式,则 ei 均为 1 时表示接受到的数据无错误 ;
注:此处为偶校验
注:这里的相加指的是异或关系
填回到最初的那张表
求得 01101001 的海明码为 011001001101 (M1是末位)