思达网校程序员软件设计师辅导专题授课一(计算机系统知识)
课堂回顾
1、 问:T循环冗余取决于K和R值,请问R值是怎么选择的?
T答:R值就是生成多项式的阶数,也就是生成多项式的最高次,比如生成多项式为:G(X)=T XP4P+XP3P+X+1 ,则R=4。
2、问:CRC求余方法和数学除法相同?x4-(X4+X3+X+1)=X3+X+1?有没有负数?
T答:TCRC求余方法和通常的数学除法不同,这里采用是的模2除法,即即以2为模,加减时不进位,不借位,和逻辑异或运算一致。那么x4-(X4+X3+X+1)=X3+X+1,照此规则就不会产生负数。(注意:前面表示的x4其实应是x的4次方,其它同理)
3、问:讲一讲海明码的奇校验和偶校验。
T答:对于海明码,我们了解下面这些就足够了TT。T要能纠正信息字中的单个错误,所需的最小距离为3。实现这种纠正的方法之一是海明码。海明码是一种多重(复式)奇偶检错系统。它将信息用逻辑形式编码,以便能够检错和纠错。用在海明码中的全部传输码字是由原来的信息和附加的奇偶校验位组成的。每一个这种奇偶位被编在传输码字的特定位置上。实现得合适时,这个系统对于错误的数位无论是原有信息位中的,还是附加校验位中的都能把它分离出来。 推求海明码时的一项基本考虑是确定所需最少的校验位数k。考虑长度为m位的信息,若附加了k个校验位,则所发送的总长度为m+k。满足条件:2PkP-1≥m+k 。从理论上讲,校验位可放在任何位置,但习惯上校验位被安排在1、2、4、8、…的位置上。图1列出了m=4,k=3时,信息位和校验位的分布情况。
|
码字位置 |
BB1B |
BB2B |
BB3B |
BB4B |
BB5B |
BB6B |
BB7B |
|
校验位 |
x |
x |
|
x |
|
|
|
|
信息位 |
|
|
x |
|
x |
x |
x |
|
复合码字 |
PB1B |
PB2B |
DB1B |
PB3B |
DB2B |
DB3B |
DB4B |
图1 海明码中校验位和信息位的定位
海明码的码距应该是3,所以能纠正1位出错。而奇偶校验码的码距才是2,只能发现1位出错,但不能纠正(不知道那一位错)。无校验的码距是1,它出任何一位出错后还是合法代码,所以也就无法发现出错。
这是关于海明码的经典说法,即码距为3,可以发现2位,或者纠正1位错。应满足2PkP-1≥m+k。
海明码的校验位PBiB(i=1,2,3,…)在海明码的第2Pi-1P位置,数据位则依序从低到高占据汉明码中剩下的位置。我们来看看数据位与校验位在汉明码中的位置:
HB14B HB13B HB12B HB11B HB10B HB9B HB8B HB7B HB6B HB5B HB4B HB3B HB2B HB1B
DB9B DB8B DB7B DB6B DB5B DB4B PB4B DB3B DB2B DB1B PB3B DB0B PB2B PB1B
比如:数据位D9对应汉明码的位置为14,14=8+4+2,则D9对应的检验位是P4P3P2。
4、问:什么时候用奇校验,什么时候用偶校验?
T答:这个在考题中会明确告知的。不需要我们去操心。
5、问:软件设计师考不考浮点数运算?
T答:考的可能性较小。如果时间不充裕可省去。
6、问:采用7中取3定比码,它规定码字长为7位,并且其中总有且仅有3个"1",编码效率为多少?这题考的是什么知识点?
T答:定比码考的可能性小。T定比码是指每个码字中均含有相同数目的“1”(码字长一定,“1”的数目一定后,所含“0”的数目也就必须相同)。正由于每个码字中“1”的个数与“0”的个数之比保持恒定,故得此名,有时也称为恒比码。若n位码字中,“1”的个数恒定为m还可称为“n中取m”码。这种码在检测时,只计算接收码字中“1”的数目,就能知道是否有差错。在国际无线电通信中广泛采用的就是7中取3定比码,这种码字长为7位,规定总有3个“1”,因此,共有C73(7取3的组合)=7×6×5/3×2×1=35种码字。定比码(n中取m)的编码效率为: R=1ogB2BCmn/n ,对于7中取3码来说,R=1ogB2B35/7=5.12/7=0.73。而5中取3码的编码效率则为1ogB2B10/5=0.66。一般来说,其编码效率是不高的,但是定比码能检测出全部奇数位错以及部分偶数位错,实际上,除了码字中“1”变成“0”和“0”变成“1”成对出现的差错外,所有其它差错都能被检测出来,检错能力还是很强的。定比码比较简单,可以用来传输电传机或其它键盘设备产生的字母和符号。若信源产生的是随机的二进制数字序列,就不能采用定比码。
7、问:请问老师,在四层存结构中,CPU内部寄存器是应该是最快的吧 ?
T答:对。
8、问:阶段测试题中关于海明码中数据位D9( )进行校验?
T答:T汉明码的校验位PBiB(i=1,2,3,…)在汉明码的第2Pi-1P位置,数据位则依序从低到高占据汉明码中剩下的位置。我们来看看数据位与校验位在汉明码中的位置:
HB14B HB13B HB12B HB11B HB10B HB9B HB8B HB7B HB6B HB5B HB4B HB3B HB2B HB1B
DB9B DB8B DB7B DB6B DB5B DB4B PB4B DB3B DB2B DB1B PB3B DB0B PB2B PB1B
数据位DB9B对应汉明码的位置为14,14=8+4+2,对应的检验位是PB4BPB3BPB2B。
|