海明码是一种常用的纠错码。如果被校数据是k位二进制数,再增加若干位校验位,使得校验位的值决定于某些被校位数据,当被校数据出错时,可根据校验位值的变化找到出错位,进而纠正出错位。若新增校验位为r位,则校验位之位数与被校验数据之位数应满足(3)。由校验位和被校

admin2009-02-15  31

问题 海明码是一种常用的纠错码。如果被校数据是k位二进制数,再增加若干位校验位,使得校验位的值决定于某些被校位数据,当被校数据出错时,可根据校验位值的变化找到出错位,进而纠正出错位。若新增校验位为r位,则校验位之位数与被校验数据之位数应满足(3)。由校验位和被校验位数据逐位异或可得到海明校验值,如果各位海明校验值均为零,表示(4)。

选项 A、数据传输出错
B、数据传输正确
C、数据出多位错
D、无法判断

答案B

解析 海明码是一种常用的纠错码。若被校数据为k位二进制数据,进行海明校验时,最少必须增加r位校验位,每位校验位对若干数据位进行校验。校验位的位数需与表示的被校验状态数有关。如有k位数据,表示某一位出错必须有一个编码(状态),这样就需要k个编码,如果也能表示r位校验位哪一位出错,又需要r个编码,如果被校验位数据和校验位读出或传输正确则也需一个编码表示。这样最少需要表示k+r+1个编码。而r位校验位共有2r个编码,因此r和k间的关系必须满足2r≥k+r+l。如r=4,则共有24=16个编码,k+4+1≤16,则k≤11,也就是说海明码设4位校验位时最多只能对11位被校数据进行校验。每一个校验位的值等于自己校验的各位被校数据位之和,因此每一个校验位与自己校验的各位被校数据之和为0,称为该校验位海明校验值。如果各校验位的海明校验值均为0,说明各位数据和校验位读出或传送正确无误,如果海明校验值不等于0,说明数据出错,旦海明校验值的编码就是出错位的海明位
转载请注明原文地址:https://kaotiyun.com/show/TXxZ777K
0

最新回复(0)