计算机组成原理课后习题答案(常国锋 武汉大学出版社) 联系客服

发布时间 : 星期一 文章计算机组成原理课后习题答案(常国锋 武汉大学出版社)更新完毕开始阅读6f993b6d910ef12d2af9e7aa

补码除法:

第五章 习题参考答案

1. 如何区别存储器和寄存器?两者是一回事的说法对吗?

答:存储器和寄存器不是一回事。存储器在CPU 的外边,专门用来存放程序和数据,访问存储器的速度较慢。寄存器属于CPU 的一部分,访问寄存器的速度很快。

2. 存储器的主要功能是什么?为什么要把存储系统分成若干个不同层次?主要有哪些层次?

答:存储器的主要功能是用来保存程序和数据。存储系统是由几个容量、速度和价格各不相同的存储器用硬件、软件、硬件与软件相结合的方法连接起来的系统。把存储系统分成若干个不同层次的目的是为了解决存储容量、存取速度和价格之间的矛盾。由高速缓冲存储器、主存储器、辅助存储器构成的三级存储系统可以分为两个层次,其中高速缓存和主存间称为Cache-主存存储层次(Cache 存储系统);主存和辅存间称为主存-辅存存储层次(虚拟存储系统)。

3. 说明存取周期和存取时间的区别。

答:存取周期是指主存进行一次完整的读写操作所需的全部时间,即连续两次访问存储器操作之间所需要的最短时间。存取时间是指从启动一次存储器操作到完成该操作所经历的时间。存取周期一定大于存取时间。

4. 现有1024×1的存储芯片,若用它组成容量为16K×8的存储器。试求: (1)实现该存储器所需的芯片数量?

(2)若将这些芯片分装在若干块板上,每块板的容量为4K×8,该存储器所需的地址线总位数是多少?其中几位用于选板?几位用于选片?几位用作片内地址?

答:(1)需1024×1的芯片128片。

(2)该存储器所需的地址线总位数是14位,其中2位用于选板,2位用于选片,

10位用作片内地址。

5. 已知某机字长8位,现采用半导体存储器作主存,其地址线为16位,若使用1K×4的SRAM芯片组成该机所允许的最大主存空间,并采用存储模板结构形式。

(1)若每块模板容量为4K×8,共需多少块存储模板? (2)画出一个模板内各芯片的连接逻辑图。 答:(1)根据题干可知存储器容量为216=64KB,故共需16块存储模板。 (2)一个模板内各芯片的连接逻辑图如下图所示。

模板内各芯片的连接逻辑图

6. 用容量为16K×1 的DRAM 芯片构成64KB 的存储器,设存储器的读/写周期均为0.5μs,CPU 在1μs内至少要访存一次,试问采用哪种刷新方式比较合理?相邻两行之间的刷新间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?

答:因为要求CPU在1μs内至少要访存一次,所以不能使用集中刷新方式,分散和异步刷新方式都可以使用,但异步刷新方式比较合理。

相邻两行之间的刷新间隔=最大刷新间隔时间÷行数=2ms÷128=15.625μs。取15.5μs,即进行读或写操作31次之后刷新一行。

对全部存储单元刷新一遍所需的实际刷新时间=0.5μs×128=64μs。

7. 什么是高速缓冲存储器?它与主存是什么关系?其基本工作过程如何?

答:高速缓冲存储器位于主存和CPU 之间,用来存放当前正在执行的程序段和数据中的活跃部分,使CPU 的访存操作大多数针对Cache 进行,从而使程序的执行速度大大提高。高速缓冲存储器的存取速度接近于CPU 的速度,但是容量较小,它保存的信息只是主存中最急需处理的若干块的副本。当CPU 发出读请求时,如果Cache 命中,就直接对Cache 进行读操作,与主存无关;如果Cache 不命中,则仍需访问主存,并把该块信息一次从主存调入Cache 内。若此时Cache 已满,则须根据某种替换算法,用这个块替换掉Cache 中原来的某块信息。

第六章 习题参考答案

1.中央处理器有哪些功能?它由哪些基本部件所组成?

答:从程序运行的角度来看,CPU 的基本功能就是对指令流和数据流在时间与空间上实施正确的控制。对于冯·诺依曼结构的计算机而言,数据流是根据指令流的操作而形成的,也就是说数据流是由指令流来驱动的。中央处理器由运算器和控制器组成。

2.中央处理器中有哪几个主要寄存器?试说明它们的结构和功能。 答:CPU 中的寄存器是用来暂时保存运算和控制过程中的中间结果、最终结果及控制、状态信息的,它可分为通用寄存器和专用寄存器两大类。通用寄存器可用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。专用寄存器是专门用来完成某一种特殊功能的寄存器,如程序计数器PC 、指令寄存器IR 、存储器地址寄存器MAR 、存储器数据寄存器MDR 、状态标志寄存器PSWR 等。

3.控制器有哪些基本功能?它可分为哪几类?分类的依据是什么? 答:控制器的基本功能有:

(1)从主存中取出一条指令,并指出下一条指令在主存中的位置。

(2)对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。 (3)指挥并控制CPU、主存和输入输出设备之间的数据流动。

控制器可分为组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型3类,分类的依据在于控制器的核心--微操作信号发生器(控制单元CU)的实现方法不同。

4.控制器有哪几种控制方式?各有何特点?

答:控制器的控制方式可以分为3种:同步控制方式、异步控制方式和联合控制方式。 同步控制方式的各项操作都由统一的时序信号控制,在每个机器周期中产生统一数目的节拍电位和工作脉冲。这种控制方式设计简单,容易实现;但是对于许多简单指令来说会有较多的空闲时间,造成较大数量的时间浪费,从而影响了指令的执行速度。异步控制方式的各项操作不采用统一的时序信号控制,而根据指令或部件的具体情况决定,需要多少时间,就占用多少时间。异步控制方式没有时间上的浪费,因而提高了机器的效率,但是控制比较

复杂。联合控制方式是同步控制和异步控制相结合的方式。

5.什么是三级时序系统?

答:三级时序系统是指机器周期、节拍和工作脉冲。计算机中每个指令周期划分为若干个机器周期,每个机器周期划分为若干个节拍,每个节拍中设置一个或几个工作脉冲。

6.什么是指令周期?什么是CPU 周期?它们之间有什么关系?

答:指令周期是指取指令、分析取数到执行指令所需的全部时间。CPU 周期(机器周期)是完成一个基本操作的时间。一个指令周期划分为若干个CPU 周期。

7.指令和数据都存放在主存,如何识别从主存储器中取出的是指令还是数据? 答:指令和数据都存放在主存,它们都以二进制代码形式出现,区分的方法为:

(1)取指令或数据时所处的机器周期不同:取指周期取出的是指令;分析取数或执行周期取出的是数据。

(2)取指令或数据时地址的来源不同:指令地址来源于程序计数器;数据地址来源于地址形成部件。

8.CPU 中指令寄存器是否可以不要?指令译码器是否能直接对存储器数据寄存器MDR 中的信息译码?为什么?请以无条件转移指令JMP A 为例说明。

答:指令寄存器不可以不要。指令译码器不能直接对MDR 中的信息译码,因为在取指周期MDR 的内容是指令,而在取数周期MDR 的内容是操作数。以JMP A 指令为例,假设指令占两个字,第一个字为操作码,第二个字为转移地址,它们从主存中取出时都需要经过MDR ,其中只有第一个字需要送至指令寄存器,并且进行指令的译码,而第二个字不需要送指令寄存器。

9. 什么是微命令和微操作?什么是微指令?微程序和机器指令有何关系?微程序和程序之间有何关系?

答:微命令是控制计算机各部件完成某个基本微操作的命令。微操作是指计算机中最基本的、不可再分解的操作。微命令和微操作是一一对应的,微命令是微操作的控制信号,微操作是微命令的操作过程。微令是若干个微命令的集合。微程序是机器指令的实时解释器,每一条机器指令都对应一个微程序。微程序和程序是两个不同的概念。微程序是由微指令组成的,用于描述机器指令,实际上是机器指令的实时解释器,微程序是由计算机的设计者事先编制好并存放在控制存储器中的,一般不提供给用户;程序是由机器指令组成的,由程序员事先编制好并存放在主存储器中。

10.某机的微指令格式中有10个独立的控制字段C0~C9,每个控制字段有Ni个互斥控制信号,Ni的值如下:

请回答:

(1)如果这10个控制字段,采用编码表示法,需要多少控制位? (2)如果采用完全水平型编码方式,需要多少控制位?

答:(1)如果这10个控制字段,采用编码表示法,需要31位控制位; (2)如果采用完全水平型编码方式,需要69位控制位。 11.假设微地址转移逻辑表达式如下: μA4=P2·ZF·T4 μA3=P1·IR15·T4 μA2=P1·IR14·T4 μA1=P1·IR13·T4