海明码是一种纠错码,其方法是为需要校验的数据位增加若干校验位,使得校验位的值决定于某些被校位的数据,当被校数据出错时,可根据校验位的值的变化找到出错位,从而纠正错误。对于32位的数据,至少需要增加(6)________________个校验位才能构成海明码

admin2020-04-30  62

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

选项 A、P4P1
B、P4P2
C、P4P3P1
D、P3P2P1

答案B

解析 本题考查计算机系统基础知识。
海明码的构成方法是在数据位之间的特定位置上插入k个校验位,通过扩大码距来实现检错和纠错。设数据位是n位,校验位是k位,则n和k必须满足以下关系:
    2k一1≥n+k
    题中数据为32位,则k至少取6,才满足上述关系。
    海明码的编码规则如下。
    设七个校验位为Pk,Pk-1,…,P1,n个数据位为Dn-1,Dn-2,…,D1,D0,对应的海明码为Hn+k,Hn+k-1,…,H1,那么:
    ①Pi在海明码的第2i-1位置,即Hj=Pi,且产2i-1,数据位则依序从低到高占据海明码中剩下的位置。
    ②海明码中的任何一位都是由若干个校验位来校验的。其对应关系如下:被校验的海明位的下标等于所有参与校验该位的校验位的下标之和,而校验位由自身校验。
    题目中数据位D5由P4P2进行校验,因为D5自右至左数是第10位(10=8+2),P4P2分别位于自右至左数的第8位和第2位。
转载请注明原文地址:https://kaotiyun.com/show/fFDZ777K
0

最新回复(0)