海明码是一种纠错码,其方法是为需要校验的数据位增加若干校验位,使得校验位的值决定于某些被校位的数据,当被校数据出错时,可根据校验位的值的变化找到出错位,从而纠正错误。以 10 位数据为例,其海明码表示为 D9D8D7D6D5D4P4D3D2D1P3D0P2P1中,其中 Di(0≤i≤9)表示数据位,Pj(1 ≤j≤4)表示校验位,数据位 D9由 P4、P3和 P2进行校验(从右至左 D9的位序为 14,即等于 8+4+2,因此用第 8 位的 P4、第 4 位的 P3和第 2 位的 P2校验),数据位 D5 由( )进行校验。

2023-09-01

A.P4P1
B.P4P2
C.P4P3P1
D.P3P2P1

参考答案:B

海明码数据位与校验位之间的关系可以采用下述公式表示:2k≥n+k+1,其中数据位是n位,校验位是k位。因此第5题套入公式可得需要6位校验位。第6题,D5在第10位,10=8+2=23+21,由于校验码处于20、21、22、23....位置,分别对应P1、P2、P3、P4,因此D5是由P4P2进行校验的。答案:B