【中级软件设计师】校验码(奇偶校验码、CRC循环冗余校验码,海明码)附软考真题
复习技巧:
若已掌握【校验码】相关知识,可直接刷以下真题;
若对知识一知半解,建议略读题目,掌握真题以下知识点,再返回刷题。(仅个人建议哦)
真题的答案及解析在文末❥(^_-)!
一、历年真题
1、设信息位是8位,用海明码来发现并纠正1位出错的情况,则校验位的位数至少为()。(2023年上半年)
A. 1
B. 2
C. 4
D. 8
2、在()校验方法中,采用模2运算来构造校验位。(2019年上半年)
A. 水平奇偶
B. 垂直奇偶
C. 海明码
D. 循环冗余
3、海明码是一种纠错码,其方法是为需要校验的数据增加若干校验位,使得校验码的值决定于某些被娇艳的数据,当被校验数据出错时,可根据校验位的值的变化找到出错位,从而纠正错误。对于32位数据,至少需要加(1)个校验码才能构成海明码。以10位数据为例,其海明码表示为 D 9 D_{9} D9 D 8 D_{8} D8 D 7 D_{7} D7 D 6 D_{6} D6 D 5 D_{5} D5 D 4 D_{4} D4 P 4 P_{4} P4 D 3 D_{3} D3 D 2 D_{2} D2 D 1 D_{1} D1 P 3 P_{3} P3 D 0 D_{0} D0 P 2 P_{2} P2 P 1 P_{1} P1中,其中 D i D_{i} Di标识数据位, P i P_{i} Pi表示校验位,数据位由 D 9 D_{9} D9由 P 4 P_{4} P4, P 3 P_{3} P3, P 2 P_{2} P2进行校验,数据位 D 5 D_{5} D5由(2)进行校验。(2018年上半年)
(1)
A. 3
B. 4
C. 5
D. 6
(2)
A. P 4 P_{4} P4 P 1 P_{1} P1
B. P 4 P_{4} P4 P 2 P_{2} P2
C. P 4 P_{4} P4 P 3 P_{3} P3 P 1 P_{1} P1
D. P 3 P_{3} P3 P 2 P_{2} P2 P 1 P_{1} P1
4、以下关于海明码的叙述中,正确的是()。(2017年下半年)
A. 海明码利用奇偶性进行检错和纠错
B. 海明码的码距为1
C. 海明码可以检错但不能纠错
D. 海明码中数据位的长度与校验位的长度必须相同
5、已知数据信息为16位,最少应附加()位校验位,以实现海明码纠错。(2016年下半年、2017上半年)
A. 3
B. 4
C. 5
D. 6
6、海明码利用奇偶性检错和纠错,通过在n个数据位之间插入k个校验位,扩大数据编码的码距。若n=48,则k应为()。(2014年上半年)
A. 4
B. 5
C. 6
D. 7
7、循环冗余校验码(CRC)利用生成多项式进行编码。设数据位为k位,校验位为r位,则CRC码的格式为()。(2012年下半年)
A. k个数据位之后跟r个校验位
B. r个校验位之后跟k个数据位
C. r个校验位随机加入k个数据位中
D. r个校验位等间隔地加入k个数据位中
8、以下关于校验码的叙述中,正确的是()。(2009年下半年)
A. 海明码利用多组数位的奇偶性来检错和纠错
B. 海明码的码距必须大于等于1
C. 循环冗余校验码具有很强的检错和纠错能力
D. 循环冗余校验码的码距必定为1
9、海明校验码是在n个数据位之外增设k个校验位,从而形成一个k+n位的新的码字, 使新的码字的码距比较均匀地拉大。n与k的关系是()。(2009年上半年)
A. 2k - 1 ≥ n + k
B. 2n - 1 ≤ n + k
C. n = k
D. n-1 ≤ k
10、以下关于采用一位奇校验方法的叙述中,正确的是()。(2018年下半年)
A. 若所有奇数位出错,则可以检测出该错误但无法纠正错误
B. 若所有偶数位出错,则可以检测出该错误并加以纠正
C. 若有奇数个数据位出错,则可以检测出该错误但无法纠正错误
D. 若有偶数个数据位出错,则可以检测出该错误并加以纠正
11、为实现海明码纠错,对于16位信息位,最少应附加的校验码为()位。(2024年下半年)
A. 5
B. 4
C. 6
D. 3
二、考点:校验码
1、奇偶校验码
a. 仅可检错,不可纠错。可检测1(奇)位错。(必背)
2、CRC循环冗余校验码
a. 仅可检错,不可纠错。可检测多位错。(必背)
b. 采用模二除法来构造校验位
c. 格式:k个数据位之后跟r个校验位
3、海明码
a. 既可检错,又可纠错。可纠1位错。(必背)
b. 公式:2k - 1 ≥ n + k (必背)
其中,n为数据位(信息位),k为校验位。
三、真题的答案与解析
答案
1、C
2、D
3、DB
4、A
5、C
6、C
7、A
8、A
9、A
10、C
11、A
解析
第1、5、6、11题:均考查海明码公式 2k - 1 ≥ n + k 的计算,代入公式计算即可。
第2题:CRC循环冗余校验码采用模二除法来构造校验位。看到【模2运算】,就去找【CRC循环冗余校验码】。故选D。
第3题:
