2.2.1 填空题
1.8位二进制补码表示整数的最小值为_①_,最大值为_②_。
答案:①-128 ②127
2.8位反码表示数的最小值为_①_,最大值为_②_。
答案:①-127 ②+127 ·
3.若移码的符号位为1,则该数为_①_数:若符号位为0,则为_②_数。
答案:①正②负
4在原码、反码和补码中,___对0的表示有两种形式。
答案:原码和反码
5.若[X]补=1000,则X=_____。
6.浮点数中尾数用补码表示时,其规格化特征是__。
答案:符号位与尾数最高位相反
7.N+1位二进制整数的取值范围是____。
答案:12~01-+n
8.一个定点数由_①_和_②_两部分组成。根据小数点的位置不同,定点数有_③_ 和_④_两种表示方法。
答案:①符号位 ②数值域 ③纯小数 ④纯整数(顺序可变)
9.8位二进制补码所能表示的十进制整数范围是_①_至_②_,前者的
进制补码表示为_③_,后者的二进制补码表示为_④_。
答案:①-72 ②+127
- ③10000000 ④01111111
10.8位无符号定点整数,其二进制编码范围是从_①_至_②_,对应十进制真值为
_③_至_④_。
答案:①00000000 ②11111111 ③0 ④255
11.8位定点小数表示中,机器数10000000采用l bit 符号位,当它是原码形式、补码形式和反码形式时,其对应的真值分别为__①__、__②__ 和__③__。
答案:①-0 ②-128 ③-127
12.在数值的编码表示中,0有惟一表示的编码有( ① );用0表示正,用1表示负的编码有( ② );若真值大,则码值大的编码是( ③ );若真值越大, 则码值越小的编码是( ④ );负数的码值大于正数的码值的编码是( ⑤ ):若要求浮点数的机器零(尾数为0,阶最小)的编码为全0(阶为0,尾数为0),则尾数的编码可为( ⑥ ),阶的编码可为( ⑦ )。
答案:①补码 ②原码、反码、补码 ③移码 ④反码⑤补码⑥补码 ⑦移码
13.码值80H :
若表示真值0,则为( ① );若表示-128,则为( ②
若表示-127,则为( ③ );若表示-0,则为( ④ )。
答案:①移码 ②补码 ③反码 ④原码
14.码值FFH :
若表示真值127,则为( ① );若表示-127,则为( ②)
若表示-1,则为( ③ );若表示-0,则为 ( ④ ):
答案:①移码 ②原码 ③补码 ④反码
15.若浮点数格式中基值(阶码的底)一定,且尾数采用规格化表示法,则浮点数的表示范围
取决于__①__的位数,而精度取决于__②__的位数。
答案:①阶码 ②尾数
16.在浮点补码加减运算中,当运算结果的尾数不是__①__和__②__形式时需要进行规格化操作。
答案:①00.1⨯……⨯ ②11.O ⨯……⨯
17.设阶码8位(最左一位为符号位),用移码表示,而尾数为24位(最左一位为符号位),用规格化补码表示,则它能表示的最大正数的阶码为—①—,尾数为—④—,而绝对值最小的负数的阶码为—③—,尾数为—④—(以上答案均用二进制书写)。
答案:①11111111 ②0111 1111 1111 1111 1111 1111
③00000000 ④1000 0000 0000 0000 0000 0000
18.二进制数在计算机中常用的表示方法有原码、补码、反码和移码等多种。表示定点整数时,若要求数值0在计算机中惟一表示为全“0”,·应采用__①__;表示浮点数时,若要求机器零(即尾数为零,且阶码最小的数)在计算机中表示为全“0”, 则阶码应采用__②__。某计算机中,浮点数的阶码占8位,尾数占40位,(字长 共48位)都采用补码,则该机器中所能表达的最大浮点数是__③__。
答案:①补码 ②移码 ③1272⨯(1-392-)
19. 汉字的__①__、__②__、__③__是计算机用于汉字输入、内部处理、输出三种不 同用途的编码。
答案:①输入编码(或输入码) ②内码(或机内码) ③字模码
20.根据国标规定,每个汉字内码用______表示。
答案:2个字节,
21.汉字输入时,将汉字转换成计算机能接受的汉字—①—码,它进入计算机后必须转换成汉字—②—码才能进行信息处理。
答案:①输入②内
22.常见的汉字输入码编码方案可以归纳为:__①__、__②__和__③__等
答案:①数字编码 ②拼音码 ③汉字字形码
23.为使汉字机内码与ASCII 相区别,通常将汉字机内码的最高位置___.
答案:1
24.汉字的基本属性有__①__、__②__和__③__。
答案:①字形 ②字音 ③字义
25.一个24⨯24点阵的汉字,需要——字节的存储空间。
答案:72
26.最小的区位码是__①__,其对应的交换码是__②__、内码是__③__、在外存字库的地址是__④__。
答案:①0101H ②2121H ③A1A1H ④0
27.汉字库的类型有__①__和__②__两种。
答案:①硬字库 ②软字库
28.GBl998代码的名称是__①__位二进制代码,其中有__②__种西文图形字符和__③__种控制字符。
答案:①7 ②34 ③94
29.常用的校验码有—①—、—②—、—③—等。
答案:①奇偶校验码 ②海明校验码 ③CRC 码
30.奇偶校验法只能发现__①__数个错,不能检查无错或__②__数个错
答案:①奇 ②偶
31.设有7位信息码0110101,则低位增设偶校验位后的代码为__①__,而低位增设奇校验位后的代码为__②__。
答案:①01101010 ②01101011
32.CRC 码又称为__①__,它具有__②__能力。
答案:①循环冗余校验码 ②纠错
33.生成多项式G(X)=4X + 1X +0X 对应的进制数为__①__,以此多项式进行CRC 编码,其校验位的位数是__②__位。
答案:①10011 ②4
2.2.2 选择题
计算机中表示地址时使用
A 无符号数 B. 原码
C 反码 D. 补码
答案:A
2.对于二进制码10000000,若其值为0,则它是用 (l)表示的;若其值为-128,则它是用(2)表示的;若其值为-127,则它是用(3)表示的:若其值为-0,则它是用 (4)表示的。 A 原码 B.反码
C.补码
D.阶码
答案: (1)A (2)C (3)B (4)A
3.当-1 B. x C. 2+x D.(2-n -2)-|x| 4.字长16位,用定点补码小数表示时,一个字所能表示的范围是_____。 A. 1521~0-- B. )21(~)21(1515----- C. 1~1+- D. )21(~115--- 答案:D 5.某机字长32位,其中1位符号位,31位尾数。若用定点整数补码表示,则最小正数为__(1)__,最大负数值为—(2)—。 A. +1 B. +312 C.-322 D. -1 答案: (1) A (2)C 6.字长12位,用定点补码规格化小数表示时,所能表示的正数范围是___ A.)21(~21212--- B. )21(~21111---S C. )21(~2/111-- D. )21(~)22/1(1111---+ 答案:C 7.在浮点数编码表示中___在机器数中不出现,是隐含的。 A.阶码 B ,符号 C 尾数 D.基数 答案:D 8.浮点数的表示范围和精度取决于____. A.阶码的位数和尾数的位数 B.阶码采用的编码和尾数的位数 C.阶码采用的编码和尾数采用的编码 D.阶码的位数和尾数采用的编码 答案;A 9.十进制数5的单精度浮点数IEEE 754代码为 A.01000000101000000000000000000000 B.11000000101000000000000000000000 C.01100000101000000000000000000000 D.11000000101100000000000000000000 答案:A 10.若单精度浮点数IEEE754代码为00111111010000000000000000000000,则其代表的十进制数为 A.-0.75 B.+0.75 C.-0.25 D.+0.25 答案:B 11.某机字长32位,采用IEEE 格式,则浮点法表示的最大正数为 A.(2-232 -)x 1282 B.(1-232-)x 1272. C.(2-232-)x 1272 D.(1-232 -)x 1282 12.在浮点数N=M * E R 中,如阶的基数R=2则(1)为规格化的数;如阶的基数R=4,则(2) 为规格化的数。 A. 0.00011....10 B. 0.0011. (10) C. 0.011......10 D. 0.11 (10) E. 1.00011....10 F. 1.0011. (10) 答案: (1) D ,G (2) B ,H 13.设浮点数的基数R=8,尾数用模4补码表示,则下列数__为规格化的数。 A.11. 111000 B. 00.000111 C. 11.101010 D. 11.111101 答案:A ,B 14.设[X]补=1. 1x 2x 3x 4x ,仅当____时,X>-1/2成立 A. 1x 必须为1,2x 3x 4x 至少有一个为1 B. 1x 必须为1,2x 3x 4x 任意 C. 1x 必须为0,2x 3x 4x 至少有一个为l D. 1x 必须为0,2x 3x 4x 任意 答案:A 15.ASCII 码是对—(1)-进行编码的一种方案,它是—(2)—的缩写。 (1)A.字符 B. 汉字 C.图形符号 D. 声音 (2) A. 余3码 B.十进制数的二进制编码 C 格雷码 D.美国标准信息交换代码 答案: (1)A (2)D 16. 32个汉字的机内码需要 A.16字节 B.32字节 C.字节 D.8字节 答案:C 17. 能发现两位错误并能纠正一位错的编码为 A.CRC 码 C. 海明码 C.偶校验码 D. 奇校验码 答案:B 18.二进制数101l.101对应的十进制数是—(1)—。十进制数19的余3码是_(2)__,用N=1S 2S 1B 2B ……K B 表示一浮点数中的双符号位补码尾数(也称为变形补码,其中1S 2S 为双符号位),当___(3)__时,此尾数为规格化数。当运算结果尾数出现__(4)__时,需进行左规;而当运算结果出现__(5)__时,表明尾数溢出,则需进行右规。 (1)A. 9.3 B. 11.5 C.11.625 D.11.10 (2)A.0001 1001 1000 1100 B. 0100 1100 1011 1100 C.0001 1001 10000110 D. 0000 0111 1100 1000 (3) (4) (5) : A. 1S 、2S 、1B 三者相同 B. 1S 、2S 相同而与1B 不同 C.1S 与2S 不同,且必须2S =1B D. 1S 与2S 不同,而不论1B 为何值 E. 1S 与1B 相同,但与2S 不同 F. 1S 与1B 相同,而不论2S 为何值 答案: (1)B (2)B (3)B (4) A (5)D 19.在CRC 校验中,接收端检查出某一位数据错后,纠正的方法是——。 A.请求重新发送 B.删除数据. C.通过余数的值由接收端自行纠正 D.以上均可以 答案:D 20.在大量数据传送中常用且有效的检验法是 A.海明码校验 B.偶校验 C 奇校验 D.CRC 校验 答案:D 21.用1位奇偶校验能检测出1位存储器错误的百分比为一 A.0% B.25% C.50% D.100% 答案:C 2.2.3 判断题 1.所有进位计数制,其整数部分最低位的权都是1。 答案:对。 2.某R 进位计数制,其左边1位的权是其相邻的右边l 位的权的R 倍。 答案:对。 3.在计算机中,所表示的数有时会发生溢出,其根本原因是计算机的字长有限。 答案:对。 4,8421码就是二进制数。 答案:不对。8421码是十进制数的编码。 5.浮点数通常采用规格化数来表示,规格化数即指其尾数的第1位应为0的浮点数。 答案:错。原码规格化后,正数为0.1⨯…⨯的形式,负数为1.1⨯…⨯的形式。补码规格化后,正数为0.1⨯…⨯的形式。负数为1.0⨯…⨯的形式。 6.一个正数的补码和这个数的原码表示一样,而正数的反码就不是该数的原码表示,而是原码各位数取反。 答案:错。一个正数的补码和反码均和这个数的原码表示一样。 7.表示定点数时,若要求数值0在计算机中惟一地表示为全0,应使用反码表示。 答案:错。表示定点数时,若要求数值0在计算机中惟一地表示为全0,应使用补码 8.将补码的符号位改用多位来表示,就变成变形补码,一个用双符号位表示的变形补码01.1010是正数。 答案:错。双符号位表示的变形补码01.1010不是正数,是一个溢出数。 9.浮点数的取值范围由阶码的位数决定,而浮点数的精度由尾数的位数决定。 10.设有两个正的浮点数;1N =m 2⨯1M ,2N =n 2⨯2M 。 (1)若m>n ,则有1N >2N 。 (2)若1M 和2M 是规格化的数,则有1N >2N 。 答案:(1)错。若m>n ,不一定有1N >2N 。 (2)对。若1M 和2M 是规格化的数,结论正确。 11.CRC 校验码的生成或校验可用由移位寄存器、半加器和简单门电路构成的电路来实现。 答案:错。CRC 校验码的生成或校验一般用移位寄存器、除法电路来实现。 2.2.4 简答题 1.试比较定点带符号数在计算机内的四种表示方法。 答:带符号数在计算机内的表示方法有原码、反码、补码、移码。原码表示方法简单易懂,乘除运算规则简单,但加、减运算的实现较复杂。补码的特点是进行加减法运算规则简单,正负数的处理方法一致。反码通常用来计算补码,由于其运算不方便,在计算机 中没有得到实际应用。移码由于保持了数据原有的大小顺序,便于进行比较操作,常用于表示浮点数中的阶码,方便浮点运算的操作。 2.试述浮点数规格化的目的、方法。 答:浮点数的规格化是使浮点数尾数的最高数值位为有效数位。当尾数用补码表示时,符号位与小数点后的第1位不相等则为已规格化数据,否则是非规格化数据。通过规格化,可以保证运算数据的精度。通常采用向左规格化,即尾数每左移1位,阶码减1,直至规格化完成。 3.在检错码中,奇偶校验法能否定位发生错误的信息位?是否具有纠错功能? 答: (1)奇偶校验法不能定位发生错误的信息位。 (2)奇偶校验法没有纠错能力。 4.简述CRC 码的纠错原理。 答:CRC 码是一种纠错能力较强的编码。在进行校验时,将CRC 码多项式与生成多项式G(X)相除,若余数为0,则表明数据正确;当余数不为0时,说明数据有错。只要选择适当的生成多项式G(X),余数与CRC 码出错位位置的对应关系是一定的,由此可以用余数作为判断出错位置的依据而纠正错码。 2.3 综合题 2.3.1 定点数的表示 将表2.1中的编码转换成十进制数值。 2.下列代码若看作ASCII 码、整数补码、8421码时分别代表什么? 77H 37H 解:77H 看作ASCII 码、整数补码、8421码时分别代表字符‘w ’、数109、数77 37H 看作ASCII 码、整数补码、8421码时分别代表字符‘7’、数55、数37。 3.字长为8位,分别求x=+)2(1000,和x=-)2(1000的移码。 解:①x=+)2(1000,则[x]补=00001000 [x]移=7 2 +[x]补=10000000+00001000=10001000 ②x=-)2(1000,则[x]补=11111000 [x]移=7 2 +[x]补=10000000+11111000=01111000 4.以下各数均为无符号数,请比较它们的大小: 32lFH 与A521H ;80H 与32H ;8000H 与AF3BH ;72H 与31H 解:321FH 6.写出下列各数的原码、反码、补码、移码表示(用8位二进制数),其中MSB 是最高位(又是符号位)。LSB 是最低位。如果是小数,小数点在MSB 之后;如果是整数,小数点在LSB 之后。 (1)-35/ (2)23/128 (3)-127 (4)用小数表示-1 (5)用整数表示-1 (6)用整数表示 -128 解:上列各数的原码、反码、补码、移码表示见表 2.2。 7.机器数字长为8位(含1位符号位),若机器数为81(十六进制),当它分别表示原码、补码、反码和移码时,等价的十进制整数分别是多少? 解:机器数为81H=10000001(二进制) 当看成原码时其等价的十进制整数=-1 当看成补码时其等价的十进制整数=-127 当看成反码时其等价的十进制整数=-126 当看成移码时其等价的十进制整数=+1 8.若小数点约定在8位二进制数的最右端(整数),试分别写出下列各种情况下W 、X 、Y 、Z 的真值。 (1) [W]补=[X]原=[Y]反=[Z]移=00H (2) [W]补=[X]原=[Y]反=[Z]移=80H (3) [W]补=[X]原=[Y]反=[Z]移=FFH 解: (1)W 、X 、Y 的真值均为0;Z 的真值为-128。 (2)X 的真值为-0:Y 的真值为-127;W 的真值为-128;Z 的真值为0。 (3)X 的真值为-127;Y 的真值为-0;W 的真值为-1;Z 的真值为127。 9.用补码表示二进制小数,最高位用1位表示符号(即形如21.x x x f …n n x x 1 )时,模应为多少? 解:设X=-0.1100二进制数补码的模=X 补-X=1.0100-(-0.1100)=10(二进制)=2。 10.用变形补码表示二进制小数,最高位用两位表示符号(即形如21f f x x .21x x …n n x x 1 )时,模应为多少? 解:设X=-00.1100二进制数补码的模=X 补-X=11.0100-(-00.1100)=100(二进制)=4。 11.设字长为8,定点小数的原码表示范围和补码表示范围分别为多少? 解: ① 字长为8,原码表示时,其表示范围如下: ②字长为8,补码表示时,其表示范围如下: 二进制原码 1.1111111 1.0000001 0.0000001 0.1111111 十进制真值 )21(7--- 72-- 72- 7 21-- 若字长为n+1,则n n x ---≤≤21||2 0 最小负数 最大负数 最小正数 最大正数 最小负数 最大负数 最小正数 最大正数 12.设字长为8,、定点整数的原码表示范围和补码表示范围分别为多少? 解: 字长为8,原码表示时,其表示范围如下: ②字长为8,补码表示时,其表示范围如下: 2.3.2 浮点数的表示 1.将下列十进制数表示成浮点规格化数,阶码3位,用补码表示;尾数9位,用补码表示。 (1)27/ (2)-27/ 解:27/=11011 ⨯ 6 2-=-0.11011⨯1 2- -27/=-11011⨯6 2-=-0.11011 ⨯ 21 2- 2.设十进制数X=(-128.75) ⨯ 10 2 -: (1)用16位定点数表示X 值; (2)设用21位二进制位表示浮点数,阶码5位,其中阶符1位;尾数16位,其中符号1位;阶码底为2。 写出阶码和尾数均用原码表示的X 的机器数,以及阶码和尾数均用补码表示的X 的机器数。 解: (1)X=(-128.75) ⨯ 10 2 -=-10000000.11⨯10 2 -=-0.001000000011 其16位定点数表示为:1.110111********* (2)X :(-128.75) ⨯10 2 -=-10000000.11⨯10 2 -=-0.1000000011⨯2 2- 阶码和尾数均用原码表示的X 的机器数为:10010 1100000001100000, 阶码和尾数均用补码表示的X 的机器数为:11110 10111111110100000 3.写出下列数据规格化浮点数的编码(设l 位符号位,阶码为5位移码,尾数为10位补码)。 (1)+111000 (2)-10101 (3)+0.01011 解: 二进制补码 1.0000000 1.1111111 0.0000001 0.1111111 十进制真值 -1 72-- 72- 721-- 若字长为n+1,则n x -≤≤21 二进制原码 11111111 10000001 00000001 01111111 十进制真值127)12(7-=-- 1- 1+ 127127 =- 若字长为n+1,则12||1-≤≤n x 0 最小负数 最大负数 最小正数 最大正数 二进制补码 10000000 11111111 00000001 01111111 十进制真值12827-=- 1- 1+ 127127 =- 若字长为n+1,则12||2-≤ ≤-n n x 0 最小负数 最大负数 最小正数 最大正数 符号位为0;6的阶码移码表示为10110;尾数补码为1110000000,所以+111000规格化浮点数的编码为0101101110000000 (2)-10101=52⨯ 0.10101 符号位为0;5的阶码移码表示为10101;尾数补码为010*******,格化浮点数的编码为1 10101 010******* 2 ⨯ 0.1011 (3)+0.01011=1 所以-10101的规符号位为0;-1的阶码移码表示为01111;尾数补码为1011000000,所以+0.01011的规格化浮点数的编码为001111 1011000000 4.写出下列十进制数的IEEE754编码。 (1)0.15625 (2)-0.15625(3)16(4)-5 解: (1)0.15625转换成二进制值为0.00101: 在IEEE754中的其规格化表示为1.01⨯32 ,e=127-3=124 1EEE754编码为;00111110001000000000000000000000 (2)0.15625转换成二进制值为-0.00101:· 在IEEE754中其规格化表示为-1.01⨯32 ,e=127-3=124; IEEE754编码为:1 0111110001000000000000000000000 (3)16转换成二进制值为10000; 在IEEE754中其规格化表示为1.0⨯42,e=127+4=131; IEEE 754编码为:010000011 00000000000000000000000 (4)-5转换成二进制值为-101; 在IEEE754中其规格化表示为1.01⨯22,e=127+2=129; IEEE754编码为:1 10000001 01000000000000000000000 5.设阶码8位(用移码表示),尾数23位,数符1位.若浮点数X的十六进制存储格式为 ,求其32位浮点数的十进制值。 (41360000) 16 解:将十六进制数展开后,可得二进制格式为 0 100000100110 1100000000000000000 ↑ S 阶码8位尾数23位 指数e=阶码-127=10000010-01111111=00000011=(3) 10 包括隐藏位1的尾数1.M=1.01101100000000000000000=1.011011 于是有X:(-1)S⨯l.M⨯2e=+(1.011011) ⨯23=+1011.011=(11.375) 10 6.二进制浮点数补码表示为49AH,前4位阶码,后8位尾数,符号位均为1位,试问真 值十进制数为多少? 解:把49AH 展开为010*********,前4位为阶码0100,符号位为0,阶码真值为+4,后8位为尾数,符号位为1,尾数的真值为-102,所以其十进制数真值为-24⨯102。 7.设阶码和尾数各为4位(各包含1个符号位),试问浮点数的表示范围为多少? ①阶码范围: ② 规格化尾数表示范围如下: ③规格化浮点数表示范围如下: 8.设浮点数字长16但,其中阶码5位(含1位阶符)以2为底移码表示,尾数11位(含1位数符)补码表示,求所能表示的规格化数的范围(表2.3中码值请用十六进制,真值用十进制填写)。 表2.3 解: 二进制补码 1000 1111 0001 0111 十进制真值823-=-- 1- 1+ 7123 =-- 0 最小负数 最大负数 最小正数 最大正数 二进制补码 1.000 1.011 0.100 0.111 十进制真值 1- )22(13--+- 12- 321-- 0 最小负数 最大负数 最小正数 最大正数 二进制补码000.12 0111 ⨯ 011.121000⨯ 100.021000⨯ 111.020111⨯ 阶码用移码000.121111⨯ 011.120000⨯ 100.020000⨯ 111.021111⨯ 十进制真值127⨯- )22(2138---+⨯- 1822--⨯ )21(237--⨯ 0 最小负数 最大负数 最小正数 最大正数 阶码(H ) 尾码(H ) 真值(D ) 最大正数 非零最小正数 最大负数 最小负数 阶码(H ) 尾码(H ) 真值(D ) 最大正数 11111 0.1111111111 )21(210 15--⨯ 非零最小正数 00000 0.1000000000 2216 ⨯- 最大负数 00000 1.0111111111 )22(210116---+⨯- 最小负数 11111 1.0000000000 15 2- 9.设机器字长为16位,定点表示时,尾数15位,阶符1位。试问 (1)定点原码整数表示时,最大正数为多少?最小负数为多少? (2)定点补码整数表示时,最大正数为多少?最小负数为多少? (3)定点原码小数表示时,最大正数为多少?最小负数为多少? (4)定点补码小数表示时,最大正数为多少?最小负数为多少? (1)定点原码整数表示时 最大正数:(215-1)10 =(32767)10;最小负数:-(215-1)10=(-32767)10 (2)定点补码整数表示时 最大正数:(215-1)10 =(32767)10;最小负数:-(215)10=(-32767)10 (3)定点原码小数表示时 最大正数:(1-2 15 -)10;最小负数:-(1-2 15 -)10 (4)定点补码小数表示时 最大正数:(1-2 15 -)10;最小负数:-(1)10 10.设浮点数字长16位,其中阶码5位(含1位阶符)以2为底移码表示,尾数11位(含1位数符)补码表示,判断下列各10进制数能否表示成规格化浮点数。若可以,请表示。 (1)3.18;(2)-1919; (3)79/512;(4)-104 ;(5)1010 解: (1)3.18=(11.10010)2 =2 10 ⨯ (0.1110010)2 其规格化浮点数表示为1001001110010000 (2)-1919=-(11110010111)2=-2 1011 ⨯ (0.11110010111)2 其规格化浮点数表示为1101l 10000110101(0舍1入) (3)79/512=2 1001 -⨯(1001111)2=210-⨯(0.1001111)2 其规格化浮点数表示为1111001001111000 (4) -10 4 -=-(23+2) 4 -=-(2 12 -+2 4 -)=-(0.000100000001)2=-2 3 -⨯(0.100000001)2 其规格化浮点数表示为11101 10111111110 (5)1010已超过了浮点数的表示范围,不能表示成规格化浮点数。 11.若将浮点数的底约定为8,其余不变,请重做上题。由此可得什么结论。 解:若将浮点数的底约定为8,则 (1)3.18=(11.10010)2=(3.42)8 =8 1 -⨯0.342=21-⨯ (0.01110010)2 其规格化浮点数表示为1111l 00111001000 (2)-1919=-(11110010111)2=-(36272)8=85 ⨯(0.011110010111) 其规格化浮点数表示为10101 11000011010(0舍1入) (3)79/512=2 1001 -⨯(1001111)2= (0.001001111)2=(0.117)8 =80⨯(0.001001111)2 其 第 13 页 共 18 页 规格化浮点数表示为1000000010011110 (4) -104-=-(23+2)4-=-(212-+24-)=-(0.000100000001)2 =-81-⨯(0.100000001)2 (5) 1010=(23+2)10=(230+210)=(1000000000000000000010000000000)2 =(1000000200)8= 811-⨯ (O.1000000000)2(0舍1入) 其规格化浮点数表示为10101 010******** 由此可见:底数越大,能表示的数的范围越大。 2.3.3 数据信息的校验 1.求下列信息码的奇校验编码和偶校验编码(设校验位在最低位)。 解: (1)1100111 (2)1000110 (3)1010110 (1)奇校验编码11001110;偶校验编码 11001111 (2)奇校验编码10001100;偶校验编码 10001101 (3)奇校验编码10101101;偶校验编码 10101100 2.求信息码01101110的海明校验码,画出能指示和纠正1位出错位的海明校验逻辑电路。 解: (1)求信息码01101110的海明校验码 ①确定海明校验位的位数: 设R 为校验位的位数,则整个码字的位数应满足不等式N=K+R<=2R-1。 设R=3,则23 -1=7,N=8+3=11,不等式不满足:设R=4,则24 -1=15,N=8+3=11,不等式满足。所以R 最小取4。 ②确定校验位的位置:位号(1—12)为2的权值的那些位,即20 、21 、22 、23 的位置作为校验位,记作P1、P2、P3、P4,余下的为有效信息位。即: 1 2 3 4 5 6 7 8 9 10 11 12 P1 P2 D7 P3 D6 D5 D4 P4 D3 D2 D1 D0 ③分组:有4个校验位,将12位分4组,第1位由校验位号之和等于I 的那些校验位所校验。如表2.4所示。 ④校验位的形成: P 1=第一组中的所有位(除P 1外)求异或:D 7○+D 6○+D 4○+D 3○+D 1=0○+1○+0○+1○+1=1 第 14 页 共 18 页 P 2=第二组中的所有位(除P 2外)求异或:D 7○+D 5○+D 4○+D 2○+D 1=0○+1○+0○+1○+1=1 P 3=第三组中的所有位(除P 3外)求异或:D 6○+D 5○+D 4○+D 0=1○+1○+0○+0=0 P 4=第四组中的所有位(除P 4外) 求异或:D 3○+D 2○+D 1○+D 0=1○+1○+1○+0=0 所以,信息码01101110的海明校验码为110011011110。 (2)校验原理 在接收端分别求G 1、G 2、G 3、G 4 G 1=P 1○+第一组中的所有位求异或=P 1○+D 7○+D 6○+D 4○+D 3○+D 1 G 2=P 2○+第二组中的所有位求异或=P 2○+D 7○+D 5○+D 4○+D 2○+D 1 G 3=P 3○+第三组中的所有位求异或=P 3○+D 6○+D 5○+D 4○+D 0 G 4=P 4○+第四组中的所有位求异或= P 4○+D 3○+D 2○+D 1○+D 0 当G 4G 3G 2G 1=0000时,接收的数无错,否则G 4G 3G 2G 1的二进制编码即为出错位号,例如G 4G 3G 2G 1=1001说明第9位出错,将其取反,即可纠错。根据此原理,指出和纠正1位出错位的海明校验逻辑电路如图 2.1所示。 3.设生成多项式为X 3 +X 1 +l ,试写出其对应的二进制代码,并计算数据信息10101的CRC 编码。 解: 对应的二进制代码为1011B 。 V(x)=B(x)G(x)= ( x 4+x 2+1) ( x 3+x 1+1)= x 7+x 4+x 2 +x+1 CRC 码为10010111。 4.求有效信息1010、1101、0111、1011的CRC 校验码,并求循环余数,说明校验原理。 解: (1)求有效信息1010的CRC 校验码 ①确定校验位的位数: 设R 为校验位的位数,则整个码字的位数应满足不等式N=K+R<=2R-1。 设R=3,则23 -1=7,N=4+3=7,不等式满足。所以R 最小取3。 ②选一个R+1位的生成多项式G(x),如G(x)=1011。 ③在有效信息后面添R 个0,然后用它和G(x)进行模2除法运算,所得的余数即为所求的校验位。 运算过程如下: 1 0 1 0 0 0 0 1 0 1 1 1 0 0 1 1 0 1 1 1 0 0 0 第 15 页 共 18 页 余数为011,所以,所求的CRC 校验码为1010011。 ○ 4求循环余数:在上面11余数的基础上添0继续进行模2除。 (2)求有效信息1101的CRC 校验码 运算过程如下: 余数为001,所以,所求的CRC 校验码为1101001。 求循环余数:在上面1余数的基础上添0继续进行模2除。 1 1 0 1 0 0 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 0 1 1 1 1 1 1 0 1 0 1 1 1 0 1 0 1 0 1 1 第 16 页 共 18 页 (3)求有效信息0111的CRC 校验码 运算过程如下: 余数为010,所以,所求的CRC 校验码为1101010 求循环余数:在上面1余数的基础上添0继续进行模2除。 (4)求有效信息1011的CRC 校验码 运算过程如下: 1 0 1 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 1 0 1 1 1 0 0 0 1 0 1 1 1 1 0 1 0 1 1 1 0 1 0 1 0 1 1 1 0 第 17 页 共 18 页 (5)校验原理 从以上(1),(2),(3)的余数循环次序来看,其余数是相同的,实际上只要是4位有效数,它们的余数均相同,而且出错模式也是相同的。见表2.5、表2.6和表2.7。 表2.5 G (x )=1011时的1010(7,4)循环码的出错模式 表2.6 G (x )=1011时的0111(7,4)循环码的出错模式 表2.7 G (x )=1011时的1011(7,4)循环码的出错模式 所以,校验的原理是根据余数来判断出错位,取反即可纠错。 5.有一个(7,3)码,生成多项式为G (x )=x 4 +x 3 +x 2 +1,写出代码001的校验码和循环余数。 解:生成多项式为11101,在有效信息后面添4个0,然后用它和G (X )进行模2除法运算。运算过程如下: 0 0 1 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 1 0 1 1 1 0 1 第18 页共18 页