[海明校验]速成指南
1、对M位数据需要多少位校验码
a) 2^k>=m+k
b) 其中k是校验位数,m是原数据位数
2、建立海明码
12 11 10 9 8 7 6 5 4 3 2 1
M8 M7 M6 M5 C8 M4 M3 M2 C4 M1 C2 C1
括号中表示参与该位数值校验的校验码
3=2+1(C2 C1)
5=4+1(C4 C1)
6=4+2(C4 C2)
7=4+3 ..
9=8+1 ..
10=8+2 ..
11=8+2+1(C8 C2 C1)
12=8+4 ..
按照这个规律可得:
C1=M1 Å M2 Å M4 Å M5 Å M7
C2=M1 Å M3 Å M4 Å M6 Å M7
C4=M2 Å M3 Å M4 Å M8
C8=M5 Å M6 Å M7 Å M8
3、关于异或运算
a) 相同为0,不同为1
4、关于校验方法
a) 依照原始数据(不包含校验码),根据上面的规则,计算出C8C4C2C1
b) 依照接收到的数据(不包含校验码),根据上面的规则,计算出新的4位校验码D8D4D2D1
c) C8C4C2C1
D8D4D2D1
----------------
R8R4R2R1
对CiDi使用异或运算得出Ri
d) Ri的值就是一共12位数中,第Ri位出错
如Ri=0110=6,则出错的就是M3(参照开篇的一组数)
posted on 2013-12-24 18:10 TheKingOfKingFish 阅读(263) 评论(0) 编辑 收藏 举报