软件设计师2--校验码

考点1:奇偶校验码

校验码基础知识

码距:任何一种编码都由许多码字构成,任意两个码字之间最少变化的二进制位数就称为数据校验码的码距。
例如:用4位二进制表示16种状态,则有16个不同的码字,此时码距为1。如0000与0001。

奇偶校验码的编码方法

奇偶校验码的编码方法是:由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。
奇校验:整个校验码(有效信息位和校验位)中“1”的个数为奇数。
偶校验:整个校验码(有效信息位和校验位)中“1”的个数为偶数。

奇偶校验码,可检查1位(奇数位)的错误,不可纠错。

例题:

1、以下关于采用一位奇校验方法的叙述中,正确的是(C)。
A、若所有奇数位出错,则可以检测出该错误但无法纠正错误
B、若所有偶数位出错,则可以检测出该错误并加以纠正
C、若有奇数个数数据位出错,则可以检测出该错误但无法纠正错误
D、若有偶数个数数据位出错,则可以检测出该错误并加以纠正

考点2:CRC循环冗余校验码

CRC校验,可检错,不可纠错

CRC的编码方法是:在K位信息码之后拼接r位校验码。应用CRC码的关键是如何从k位信息位简便得到r位检验码(编码),以及如何从k+r位信息码判断是否出错。
把接收到的CRC码用约定的生成多项式G(X)去(模二除法),font color = green>如果正确,则余数为0;如果某一位出错,则余数不为0。不同的位数出错其余数不同,余数和出错位序号之间有唯一的对应关系。

例题:

1、在(D)校验方法中,采用模2运算来构造校验位。
A、水平奇偶
B、垂直奇偶
C、海明码
D、循环冗余

考点3:海明校验码

海明校验,可检错,也可纠错

海明校验码的原理是:在有效信息位中加入几个校验位形成海明码,使码距比较均匀地拉大,并把海明码的每个二进制位分配到几个奇偶校验组中。当某一位出错后,就会引起有关的几个校验位的值发生变化,这不但可以发现错误,还能指出错误的位置,为自动纠错提供了依据。

校验位求取公式:2r≥m+r+1 或者 2r-1≥m+r

校验方式对比

校验码位数校验位置检错纠错校验方式
奇偶校验1一般拼接在头部可检奇数位错不可纠错奇校验:最终1的个数是奇数个;
偶校验:最终1的个数是偶数个;
CRC循环冗余校验生成多项式最高次幂决定拼接在信息位尾部可检错不可纠错模二除法求余数,拼接作为校验位
海明校验2r≥m+r+1插入在信息位中间可检错可纠错分组奇偶校验

例题:

1、以下关于海明码的叙述中,正确的是(A)。
A、海明码利用奇偶性进行检错和纠错
B、海明码的码距为1
C、海明码可以检错但不能纠错
D、海明码中数据位的长度与校验位的长度必须相同

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

3、以10位数据为例,其海明码表示D9D8D7D6D5D4P4D3D2D1P3P0P2P1中,其中Di(0≤i≤9)表示数据位,Pi(1≤i≤4)表示校验位,数据位D9由P4、P3和P2进行校验(从右至左D9的位序为14,即等于8+4+2,因此用第8位的P4、第4位的P3和第2位的P2校验),数据位D5由(B)进行校验。
A、P4P1
B、P4P2
C、P4P3P1
D、P3P2P1

  • 25
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值