计算机组成原理与汇编的课后答案 下载本文

习题及解答

第1章 习题一

1.什么是程序存储工作方式?

答:计算机的工作方式——存储程序工作方式。即事先编写程序,再由计算机把

这些信息存储起来,然后连续地、快速地执行程序,从而完成各种运算过程。 4.数字计算机的主要特点是什么?

(1) 能在程序控制下自动连续地工作; (2|)运算速度快; (3) 运算精度高;

(4) 具有很强的信息存储能力;

(5) 通用性强,应用领域及其广泛。 5.衡量计算机性能的基本指标有哪些? 答:衡量计算机性能的基本指标:

(1)基本字长——参加一次运算的数的位数;

(2)数据通路宽度——数据总线一次能并行传送的位数;

(3)运算速度——可用①CPU的时钟频率与主频,②每秒平均执行指令数,③典

型四则运算的时间来表示。

(4)主存储器容量——可用字节数或单元数(字数)×位数来表示。 (5)外存容量——常用字节数表示。 (6)配备的外围设备及其性能。 (7)系统软件配置。

7. 系统软件一般包括哪些部分?列举你所熟悉的三种系统软件。

系统软件一般包括操作系统,编译程序、解释程序、各种软件平台等。例如WINDOWS98操作系统,C语言编译程序等,数据库管理系统。 8.对源程序的处理有哪两种基本方式?

对源程序的处理通常有两种处理方式:解释方式和编译方

第2章 习题二

1.将二进制数(101010.01) 转换为十进制数及BCD码。 解:(101010.01) = (42.25) = (01000010.00100101) 2.将八进制数(37.2)转换为十进制数及BCD码. 解:(37.2) = (31.25) =(00110001.00100101) 3.将十六进制数(AC.E)转换为十进制数及BCD码.

解: (AC.E) =(172.875) = (000101110010.100001110101)

4.将十进制数(75.34)转换为8位二进制数及八进制数、十六进制数。 解: (75.34)= (01001011.01010111) =(213.256) =(4B.57) 5.将十进制数13/128转换为二进制数.

解: (13/128) =(1101/10000000) =(0.0001101)

6.分别写出下列各二进制数的原码、补码,字长(含一位数符)为8位。

(1)0 (2)- 0 (3)0.1010 (4)- 0.1010 (5)1010 (6)-1010 解: 原码 补码

2

2

10

BCD

8

8

10

BCD

16

10

BCD

10

10

2

8

16

10

2

2

1

0 00000000 00000000 -0 10000000 00000000

0.1010 0.1010000 0.1010000 - 0.1010 1.1010000 1.0110000 1010 00001010 00001010 -1010 10001010 11110110 7.若X=0.1010,则X、真值等于什么?

解:X=0.1010,则X=0.1010,真值 X = 0.1010 8. 若X=1.1010,则X、真值等于什么?

解:X=1.1010,则X=1.0110,真值 X = - 0.0110

9. 某定点小数字长16位,含1位符号,原码表示,分别写出下列典型值的二进制代

码与十进制真值。

(1)非0最小正数 (2)最大正数

(3)绝对值最小负数 (4)绝对值最大负数

解: 二进制代码 十进制真值

(1)非0最小正数 0.000000000000001 2

-15

(2)最大正数 0.111111111111111 1-2-15 (3)绝对值最小负数 1.000000000000001 -2-15 (4)绝对值最大负数 1.111111111111111 -(1-2-15)

10. 某定点小数字长16位,含1位符号,补码表示,分别写出下列典型值的二进制

代码与十进制真值。

(1)非0最小正数 (2)最大正数 (3)绝对值最小负数 (4)绝对值最大负数

解: 二进制代码 十进制真值

(1)非0最小正数 0.000000000000001 2-15 (2)最大正数 0.111111111111111 1-2-15 (3)绝对值最小负数 1.111111111111111 -2-15 (4)绝对值最大负数 1.000000000000000 -1

11. 某浮点数字长16位,其中阶码6位,含1位符号位,补码表示,以2为底;尾数10

位(含1位数符),补码表示,规格化。分别写出下列各典型值的二进制代码与十进制真值。

(1)非0最小正数 (2)最大正数 (3)绝对值最小负数 (4)绝对值最大负数

解: 二进制代码 十进制真值 (1)非0最小正数 100000, 0.100000000 (2)最大正数 011111, 0.111111111 (3)绝对值最小负数 100000, 1.100000000 (4)绝对值最大负数 011111, 1.000000000

2

14. 减少指令中一个地址码位数的方法是什么?

答:减少指令中一个地址码位数的方法是采用寄存器寻址方式。 15. 某主存单元的地址码与存储单元内容对应关系如下: 地址码 存储内容 1000H A307H 1001H 0B3FH 1002H 1200H 1003H F03CH 1004H D024H

(1)若采用寄存器间接寻址读取操作数,指定寄存器R0的内容为1002H,则操作

数是多少?

(2)若采用自增型寄存器间接寻址方式(R0)+,R0的内容为1000H,则操作数是多

少?指令执行后R0的内容是什么?

(3)若采用自减型寄存器间接寻址方式-(R1)+读取操作数,R1的内容为1003H,

则操作数是多少?指令执行后R1的内容是什么?

(4)若采用变址寻址方式X(R2),指令中给出形式地址 d = 3H , 变址寄存器R2

的内容为1000H,则操作数是多少? 解:(1)操作数为1200H。

(2)操作数为A307H,指令执行后R0的内容1001H。 (3)操作数为F03CHH,指令执行后R0的内容1002H。 (4)操作数为F03CHH。

16. 对I/O设备的编址方法有哪几种?请稍作解释。

答:对I/O设备的编址方法有两种:外围设备单独编址和外围设备与主存统一编

址。

外围设备单独编址:为I/O接口中的有关寄存器分配I/O端口地址,一般由地址

总线若干低位提供I/O端口地址,从而选择某个寄存器进行读/写。

外围设备与主存统一编址。将I/O接口中的有关寄存器与主存单元统一编址,

一般由地址码中高端(地址值大)的一段区域分配给I/O端口。 17. I/O的设置方法有哪几种?请稍作解释。 答:I/O指令的设置方法有三种:

(1)设置专用的I/O指令:指令中的操作码明确规定某种输入/输出操作,CPU

寄存器号,I/O端口地址。应用于外围设备单独编址方式。

(2)用通用的数据传送指令实现I/O操作:应用于外围设备与主存单元统一编

址方式。

(3)通过I/O处理器或处理机控制I/O操作:应用于采用协处理器或多处理机

的系统。

第3章 习题三

1.试说明串行进位和并行进位的不同之处。

答:采用串行进位的加法器,是将n个加法器串接起来。其中的进位是逐级形成的,

每一级的进位直接依赖前一级的近位。由于串行进位的延时时间较长,所以速度很慢。

3

采用并行进位的加法器中,各加法器的进位信号仅由进位产生函数G与进位传

递函数P及最低位进位C决定,而G和P之与本位的A和B有关,即G与P的形成是同时的,因此各级的进位输出C也是同时形成的。并行进位有效地减少进位延时时间。

3.用变形补码计算[X]+[Y],并指出是否溢出,说明是正溢还是负溢 (1)[X]=00 110011 [Y] = 00 101101 0 0 1 1 0 0 1 1 +) 0 0 1 0 1 1 0 1

0 1 1 0 0 0 0 0

[X]+[Y]=01 100000 , 符号位为01,为正溢。 (2)[X]=00 010110 [Y] = 00 100101 0 0 1 1 0 1 1 0 +) 0 0 1 0 0 1 0 1

0 1 0 1 1 0 1 1

[X]+[Y]=01 011011 , 符号位为01,为正溢。 (3)[X]=11 110011 [Y] = 11 101101 1 1 1 1 0 0 1 1 +) 1 1 1 0 1 1 0 1

1 1 1 0 0 0 0 0 [X]+[Y]=11 100000 , 符号位为11,结果正确。 (4)[X]=11 001101 [Y] = 11 010011 1 1 0 0 1 1 0 1 +) 1 1 0 1 0 0 1 1

1 0 1 0 0 0 0 0 [X]+[Y]=10 100000 , 符号位为10,为负溢。 3.用变形补码计算[X]补-[Y]补,并指出是否溢出,说明是正溢还是负溢。 (1)[X]=00 110011 [Y] = 00 101101 解:[-Y]补=11 010011 0 0 1 1 0 0 1 1 +) 1 1 0 1 0 0 1 1

0 0 0 0 0 1 1 0 [X]-[Y]=00 000110 , 符号位为00,结果正确。 (2)[X]=00 110011 [Y] = 11 010011 解:[-Y]补=00 101101 0 0 1 1 0 0 1 1 +) 0 0 1 0 1 1 0 1

0 1 0 0 0 0 0 0

[X]-[Y]=01 000000 , 符号位为01,为正溢。 (3)[X]=00 100011 [Y] = 00 110100 解:[-Y]补=11 001100

i

i

0

i

i

i

i

i

i

i

4

0 0 1 1 0 0 1 1 +) 1 1 0 0 1 1 0 0

1 1 1 1 1 1 1 1

[X]-[Y]=11 111111 , 符号位为11,结果正确。 (4)[X]=00 101010 [Y] = 11 110111 解:[-Y]补=00 001001 0 0 1 0 1 0 1 0 +) 0 0 0 0 1 0 0 1

0 0 1 1 0 0 1 1

[X]-[Y]=00 110011 , 符号位为00,结果正确。 6.用无符号数一位乘法计算X×Y,写出规范的运算过程。 (1)X=1001 Y=1101

(2)X=1101 Y=1111

5