1.3 判断题
1. 汇编语言就是机器语言。( )
2. 所谓三总线就是数据总线、控制总线、地址总线。( )
3. 计算机中所有数据都是以二进制形式存放的。( )
4. 若[X]原=[X]反=[X]补,则该数为正数。( )
5. 补码的求法是:正数的补码等于原码,负数的补码是原码连同符号位一起求反加1( )
6. 无论是什么违纪,其CPU都具有相同的机器指令。( )
7. 与二进制数11001011B等值的压缩型BCD码是11001011B。( )
8. 十进制数378转换成十六进制数时1710H。( )
9. 与十进制小数0.5625等值的二进制小数1.0011B。 ( )
10. 二进制数10111101111B转换成十六进制数时FE5H。( )
11. 如果二进制数11111B~01111B的最高位为符号位,其能表示31个十进制数。 ( )
[答案]
1.错 2. 对 3. 对 4.对 5. 错 6. 错 7. 错
8.错 9. 错 10. 错 11. 对
1.4填空题
1. 冯•诺依曼原理的基本思想是(1)和(2)。
[解] (1)程序储存 (2)程序控制
2.第一代计算机采用的电子器件是(1).
[解] (1) 电子管
3.一个完整的计算机系统应包括(1)和(2)。
[解] (1)硬件系统 (2)软件系统
4.计算机中所谓三总线包括(1)、(2)和(3)。
[解] (1)数据总线 (2)地址总线 (3)控制总线
5.计算机系统中数据总线用于传输 (1) 信息,其特点是 (2) 。地址总线用于传输 (3)
信息,其特点是 (4) 。如果CPU的数据总线与地址总线采用同一组信号线,那么系统中需要采用 (5) 分离出地址总线。
[解] (1)数据 (2)双向三态 (3)地址 (4)单向三态 (5)锁存器
6.计算机的软件可以分成两大类,即 (1) 和 (2)。
[解] (1)系统软件 (2)应用软件
7.在计算机中的负数以 (1) 方式表示,这样可以把减法转换为加法。
[解](1)补码
8.在计算机内部,所有信息的存取、处理、传送都是以 (1) 形式进行的。
[解] (1)二进制编码
9.对于一个字节的带符号数可表示的最大正数为 (1) ,最小负数时 (2) 。
[解] (1)+127 (2)—128
10.一个8位二进制补码数10010011B等值扩展为16位二进制数后,其机器数为 (1) 。
[解] (1)11111111 10010011B
11.用补码表示的二进制数10001000B转换为对应的十进制数真值为 (1) 。
[解] (1)—120
12.设机器字长为8 位,已知X=-1,则[X]原= (1) ,[X]反= (2) , [X]补= (3) 。
[X+Y]补= (3) 。
[解] (1)10010101B (2)01001010B (3)11011111B
13.将十进制整数4120分别转换为相对应的二进制数、八进制数和十六进制数。其转换结果分别为 (1) 、 (2) 、 (3) 。
[解] (1)1 0000 0001 1000B (2)10030Q (3)1018H
14.若X=-107,Y=+74。按8位二进制可写出:[X]补= (1) ;[Y]补= (2) ;
[X+Y]补= (3) 。
[解] (1)10010101B (2)01001010B (3)11011111B
15.若X=-128,Y=-1,机器字长为16位,求:[X]补= (1) ; [Y]补= (2) ;
[X+Y]补= (3) 。
[解] (1)FF80H (2)FFFFH (3)FF7FH
16.将十进制小数0.65625转换为相对应的二进制数、八进制数和十六进制数。其转换结果分别为 (1) , (2) , (3) 。
[解] (1)0.10101B (2)0.52Q (3)0.A8H
17.将二进制数1001.101B,八进制数35.54Q,十六进制FF.1H转换为十进制,结果分别为 (1) , (2) , (3) 。
[解] (1)9.625D (2)29.6875D (3)255.0625D
18.一个二进制数11111010B转换成压缩的BCD码的形式为 (1) 。
[解] (1)250H
19.有一个16位的二进制数0100 0001 0110 0011B,与它等值的十进制数是 (1) ,如果是压缩BCD码表示的数是 (2) 。
[解] (1) 16739 (2)4163
20.十进制数255的ASCⅡ码,可以表示为 (1) ;用压缩型BCD码表示为 (2) ;
其16 进制数表示为 (3)。
[解] (1)32H 35H35H (2)00000010 01010101B (3)0FFH
21.可将36.25用IEEE754的单精度浮点格式表示成 (1) 。
[解] (1) C210000H
1.5 简答题
1.简述数据总线和地址总线各自具有的特点。如果某CPU的数据总线与地址总线采用同一组信号线,可以采用什么方法将地址总线分离出来。
[解] 数据总线的特点为双向三态,其总线位数决定CPU与外部一次传输的位数。地址总线的特点为单向三态,其总线位数决定CPU对外部寻址的范围。如果某CPU的数据总线与地址总线采用同一组信号线,可以采用锁存器将地址总线分离出来。‘
2.试举例说明什么是压缩型(或称组合型)BCD码?什么是非压缩型(或称非组合型)BCD码?
[解]压缩型BCD码为一字节表示2位十进制数,如:36H表示36。非压缩型BCD码为一字节表示1位十进制数,其中高4位为0。如:0306H表示36。
3.在计算机中常采用哪几种数值?如何用符号表示?
[解] 在计算机中常采用二进制、八进制、十进制、十六进制数等。为了明确所采用的数值,在相应数的末尾都采用对应的符号说明。其中十进制用D表示(D-Decimal可以默认不写),
八进制原为 Octonary,为避免与数字0混淆,用字母Q表示八进制,用H(Hexadecimal)表示十六进制。
4.根据ASCⅡ码的表示,试写出0、9、F、f、A、a、CR、LF、$等字符的ASCⅡ码。
[解] 字符 0 9 F f A a CR LF $
ASCⅡ码30H 39H 46H 66H 41H 61H 0DH 0AH 24H
5.将下列十进制数分别转换成二进制数、八进制数、十六进制数。
(1)39 (2)54 (3)127 (4)119
[解](1)100111B 47Q 27H
(2) 110110B 66Q 36H
(3) 1111111B 117Q 7FH
(4)1110111B 167Q 77H
6.8位、16位二进制数所表示的无符号数及补码的范围是多少?
[解] 8位二进制无符号数表示的范围为0~255,8位二进制补码表示的范围为-128~+127;16为无符号二进制数表示的范围为0~65535,16位二进制补码表示的范围为-32768~+32767。
7.将十进制数146.25转换为二进制,小数保留四位。
[解]10010010.0100B
8.将下列二进制数转换为十进制数,小数保留四位。
(1)00001011.1101B (2)1000110011.0101B (3)101010110011.1011B
[解] (1)11.8125 (2)563.3125 (3)2739.6875
9.写出二进制数1101.101B,十六进制数2AE.4H,八进制数42.54Q的十进制数。
[解] 1101.101B=13.625D 2AAE.4H=686.25D 42.57Q=34.6875D
10.简述原码、反码、补码的规则。
[解]
1)求原码的规则:正数的符号位为0,负数的符号位为1,其他位表示数的绝对值。
2)求反码的规则:正数的反码与其原码相同;负数的反驳吗为原码除符号位以外的各位取反。
3) 求补码的规则:正数的补码与其原码相同;负数的补码为反码在最低位上加1。
11.用补码计算(-56)-(-17)。
[解] 此处运用补码加减运算公式[X±Y]补=[X]补±[±Y]补,令X=-56,Y=-17,且有:
[X]原=10111000B、[X]反=11001000B、[X]补=11001001B
[Y]原=10010001B、[-Y]补=00010001B
则[X]补=11001000B
+)[-Y]补=00010001B
[X-Y]补=11011001B
得[X-Y]原=10100111B=-39
12.简述计算机在进行有符号补码运算中进位与溢出的区别。
[解] 进位为数据运算时的正常情况,其进位状态通过CPU中进位状态位的状态体现。
溢出为运算结果超出了所能表示的数据范围,数据侵占了符号位。
13.简述进行有符号补码运算判断是否产生溢出的方法。
[解]判断溢出的方法可以有两种:
1)双进位法:2个进位位分别为次高位向最高位的进位和最高位向进位位的进位。如果两个进位均有或均无则无溢出。如果两个进位中1个有进位而另1个无进位则一定有溢出。
2)同号相减无溢出,同号相加是结果符号与加数符号相反有溢出,相同则无溢出。异号相加无溢出,异号相减时结果符号与减数符号相同有溢出,相反则无溢出。
14.用8位二进制补码进行计算(-56)+(-177),并判断出运算结果是否有溢出。
[解]令X=-56,Y=-117
[X]原=10111000B、[X]反=11001000B、[X]补=11001001B
[Y]原=11110101B、[XY]反=10001010B、[Y]补=10001011B
则 [X]补=11001000B
+) [Y]补=10001011B
[X]补+[Y]补=01010011B
得[X]补+[Y]补=[X+Y]补=01010011B,X+Y=[[X+Y]补]]补=01010011B=+83
从上面运算式中可以看到,次高位向最高位无进位,而你最高为向进位位有进位,所以运算结果溢出。从另一个角度来看,两个负数相加,结果为正数,其符号与减数的符号相反,所以运算结果有溢出。也就是(-56)+(-177)=-173≠+83,运算结果不正确,这是因为已婚算结果又溢出,也就是运算结果的数据位超出了所能表示的范围,侵占了符号位。
15.试将0.0875用IEEE-754的单精度浮点格式表示。
[解]
0.0875=0.000101100110011001100110011B=1.01100110011001100110011B×2的-100B次
尾数L=01100110011001100110011B
阶码=01111111B-100B=01111011B
0.0875的浮点表示=0 01111011 01100110011001100110011 B=3DB33333H