8.5
(a) 用(7, 4) Hamming码对表中数据进行编码
i
|
i+1
|
i+2
|
i+3
|
0110
|
1001
|
1000
|
1111
|
(b) 下列哪些Hamming码有错, 错在哪一位, 并解码.
1100111, 1100110, 1100010
解答
(a)
如图, 海明码中1/2/4位为校验码, 7/6/5/3位分别为原码的0/1/2/3位.通过保持每个圆中的偶校验编码
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
编码
|
i
|
0
|
1
|
1
|
|
0
|
|
|
0110011
|
i
|
|
|
|
0
|
|
1
|
1
| |
i+1
|
1
|
0
|
0
|
|
1
|
|
|
1001100
|
i+1
|
|
|
|
1
|
|
0
|
0
| |
i+2
|
0
|
0
|
0
|
|
1
|
|
|
0000111
|
i+2
|
|
|
|
0
|
|
1
|
1
| |
i+3
|
1
|
1
|
1
|
|
1
|
|
|
1111111
|
i+3
|
|
|
|
1
|
|
1
|
1
|
(b)
检查三个圆中的偶校验
c1=h1⊕
h3⊕h5⊕h7
c2=h2⊕
h3⊕h6⊕h7
c4=h4⊕
h5⊕h6⊕h7
|
C1
|
C2
|
C4
|
错误位
|
原码
|
解码
|
1100111
|
1
|
0
|
0
|
1
|
1100110
|
1101
|
1100110
|
0
|
0
|
0
|
无
|
1100110
|
1101
|
1100010
|
1
|
1
|
0
|
3
|
1100110
|
1101
|