《计算机组成原理》课程习题答案 - 秦磊华2011-9-8 下载本文

《计算机组成原理》习题答案 (秦磊华)

0000,0000,0000,0000,0101,1000,0001,0010 00005812H div $t3,$t7

0000,0001,0110,1111,0000,0000,0001,1010 016F001AH MFLO $t3

0000,0000,0000,0000,0101,1000,0001,0010 00005812H

4.1 什么叫指令?什么叫指令系统?

4.2 试述定长指令与变长指令的优缺点。

4.3 请从参考书籍或资料中找出一种计算机的指令格式,并加以说明。 4.4 指令的地址码与指令中的地址码含义有何不同?

4.4 一条能完成算术运算或逻辑运算的指令最多可包含多少个地址码?这些地址码各起何作用?是否可不含地址码?不含地址码时如何完成上述操作?

4.6 什么叫寻址方式?有哪几种基本寻址方式?其有效地址是如何形成的? 4.7 某计算机字长16位,运算器16位,有16个通用寄存器,8种寻址方式,主存128K字,指令中操作数地址码由寻址方式字段和寄存器号字段组成。试问: (1) 单操作数指令最多有多少条? (2) 双操作数指令最多有多少条? (3) 直接寻址的范围多大? (4) 变址寻址的范围多大?

4.8 从功能上讲,一般计算机应包含哪几类指令?各类指令起什么作用? 4.9 精简指令系统具有哪些主要特征?

第 45 页 共 70 页

《计算机组成原理》习题答案 (秦磊华)

第六章 控制器 习 题 六

6.1解释下列名词

指令周期 数据通路 时钟周期 同步控制 异步控制 联合控制 单周期处理器 多周期处理器 微操作 相容性微命令 互斥性微命令 微指令 微程序 微程序控制器 控制存储器 硬布线控制器 6.1. 答:

指令周期:取指令并执行一条指令所需要的时间,一般由若干个机器周期组成,包括从取指令、分析指令到执行完所需的全部时间。

数据通路:数据在功能部件之间传送的路径。

时钟周期:由CPU时钟定义的定长时间间隔,是CPU工作的最小时间单位,也称节拍脉冲或T周期。

同步控制:选取部件中最长的操作时间作为统一的时间间隔标准,使所有部件都在这个时间间隔内启动并完成操作。

异步控制:系统不设立统一的时间间隔标准(基准时钟除外),各部件按各自的时钟工作,分别实现各自的时序控制,时间衔接通过应答通讯方式(又称握手方式)实现。

联合控制:同步控制与异步控制相结合。对大多数节拍数相近的指令,采用同步控制;而对少数节拍数多不固定的指令,采用异步控制。

单周期处理器:所有指令在一个时钟周期内完成的处理器。

多周期处理器:每条指令的执行分成多个阶段,每个时钟周期完成一个阶段的工作。 微操作:执行部件收到微命令后所进行的操作。 相容性微命令:能同时并行执行的微命令。 互斥性微命令:不能并行执行的微操作。

微指令:由微指令产生的一组实现一定微操作功能的微命令的组合。 微程序:实现一条指令功能的若干条微指令的集合。

微程序控制器:采用微程序设计方法设计的控制器。指令执行过程中所需要的所有控制信号以微指令的方式存在在控制存储器中,指令执行时,逐条读出微指令,以产生执行执行过程中所需要的控制信号。

控制存储器:微程序控制器中用于存放解释所有指令微程序的存储器。

硬布线控制器:又称为组合逻辑控制器,指令执行所需要的控制信号直接由逻辑门电路和触发器等构成的电路产生,与微程序控制器相比,具有结构复杂但速度快的特点。 6.2 回答下列问题

1)中央处理器的基本功能是什么?从实现其功能的角度分析,它应由哪些部件组成? 答:五方面的功能:

指令执行顺序的控制。即控制程序中的指令按事先规定的顺序自动地执行,从而保

第 46 页 共 70 页

《计算机组成原理》习题答案 (秦磊华)

证程序执行过程中,指令在逻辑上的相互关系不被改变。

指令的操作控制。即产生指令执行过程中所需要的信号,以控制执行部件按指令规定的操作运行。

时间控制,即对每个控制信号进行定时,以便按规定的时间顺序启动各操作。对于任何一条指令而言,如果操作控制信号的时间不正确,则指令的功能也就不能正确实现。

数据加工处理。即对数据进行算术、逻辑运算,或将数据在相关部件之间传送。 异常和中断处理。如处理运算中的异常及处理外部设备的中断服务请求等。 组成:中央处理器主要由控制器和运算器两部分构成。控制器的主要功能包括:取指令、计算下一条指令的地址、对指令译码、产生相应的操作控制信号、控制指令执行的步骤和数据流动的方向。运算器是执行部件,由算术逻辑单元和各种寄存器组成。

2)CPU内部有哪些寄存器?它们的功能分别是什么?

答:(1) 指令寄存器(IR):IR用于保存指令。从主存储器取出的指令存放在IR中,直到新的指令从主存中取出为止。

(2) 程序计数器(PC) :PC保存将要执行的指令地址,故又称指令地址寄存器。CPU取指令时,将PC的内容送到主存地址寄存器,然后修改PC的值形成下一条将要执行的指令地址

(3) 地址寄存器(AR):AR用来保存当前CPU所要访问的主存单元地址,无论CPU是取指令还是存取数据,都必须先将要访问的主存单元地址送AR,直到读/写操作完成。

(4) 通用寄存器组(GR):通用的含义是指寄存器的功能有多种用途,GR可作为ALU的累加器、变址寄存器、地址指针、指令计数器、数据缓冲器,用于存放操作数(包括源操作数、目的操作数及中间结果)和各种地址信息等。

(5) 数据缓冲寄存器(DR)

DR作为CPU和主存之间的数据缓冲寄存器用于存放操作数、运算结果或中间结果,以减少访问主存的次数;也可存放从主存中读出的数据,或准备写入主存的数据。 (6) 程序状态字寄存器(PSW)

PSW用于保存由算术运算指令、逻辑运算指令、测试结果等建立的各种条件标志。常见的状态信息包括进位标志(C)、溢出标志(V)、结果为负数标志(S)及结果为零标志(Z)等。

3)什么是取指周期?取指周期内应完成哪些操作?

答:取指周期就是从开始取指令到取指令完成所需要的时间。取指周期要完成两方面的操作,一是将PC的值送存储器地址寄存器MAR,并完成储单元去取指令;二是如何形成后续指令地址:

?顺序执行指令时,将PC内容加当前指令所占用的主存单元数(以字节为单位); ?当出现转移时,根据寻址方式、转移条件、转移的目标地址等内容计算得到。 4)指令有几种执行方式?说明各自的特点。

答:指令的执行方式有顺序执行方式、重叠执行方式和流水执行三种方式。

顺序执行方式:是一种串行执行方式,取出一条指令的操作全部结束后才能开始下一条指令的指令周期,这种方式控制简单,程序的执行速度慢。

重叠执行方式:是一种局部并行方式,通常将当前指令的执行阶段与下一条指令的取指阶段重叠进行,这种方式控制较复杂,但可以提高程序的执行速度;

流水执行方式:是一种并行执行方式,它将指令的执行分多个阶段(每个阶段的任务由特定的功能部件完成),一般而言,在该执行方式下,指令间的并行程度比重叠执行方式

第 47 页 共 70 页

《计算机组成原理》习题答案 (秦磊华)

要高,控制更为复杂,可以更快地提高程序的执行速度。

5)计算机为什么要设置时序系统?说明指令周期、机器周期、和时钟周期的含义。 答:指令执行过程中的所有操作必须按照一定的次序完成,而且这些操作持续的时间也有严格的限制,因此,在计算机系统中需要设置时序系统,对指令执行过程中的所有控制信号进行时间控制,以保证指令功能的正确实现。

通常将一条指令从取出到执行完成所需要的时间称为指令周期,包括取指周期和执行周期,指令周期通过右若干和机器周期组成,所包含的机器周期的数量随指令功能和寻址方式的不同而不同。

机器周期分成若干个节拍电位时间段,通常以CPU完成一次微操作所需要的时间为基础来定义节拍电位的时间;由CPU时钟定义的定长时间间隔,是CPU工作的最小时间单位,也称节拍脉冲或T周期。

6)组合逻辑控制器与微程序控制器各有什么特点?

答:硬布线控制器又称为组合逻辑控制器,这种控制器中的控制信号直接由各种类型的逻辑门电路和触发器等构成,与微程序控制器相比,具有结构复杂但速度快的特点。

微程序控制器的设计采用了存储技术和程序设计技术,使复杂的控制逻辑得到简化。通过过读出存放在微程序控制器中微指令产生指令执行过程中所需要的控制信号,所以,与硬布线控制器相比,微程序控制器的速度较慢。 7)说明程序与微程序,指令与微指令的异同

答:微程序是多条微指令系列的集合,用于实现指令的功能,属于机器指令级别,对用于的透明性不强,存放在CPU内的控制存储器中;程序则是为了完成某一应用功能所编写的指令(包括机器语言指令或高级语言指令)集合,属于高级语言级别,对用户的透明性好,运行时存放在计算机的主存中。

指令是指挥计算机执行某种功能的命令,是构成程序的基本单位,由操作码和地址字段构成;而微指令则用于微程序控制器中产生指令执行过程中所需要的微命令,是构成微程序的基本单位,由操作控制字段、判别测试字段和下地址字段等组成。 8)微命令有哪几种编码方法?它们是如何实现的?

答:微指令的微命令有三种编码方法,分别是直接表示方法、字段直接译码法和混合控制法。

直接表示法的基本思想是:将微指令操作控制字段的每个二进制位定义为一个微命令,用“1”或“0\表示相应的微命令的“有”或“无”。

字段直接译码法的基本思想是:将微指令格式中的操作控制字段分成若干组,每组中包含若干个互斥性微命令,将相容性的微命令安排在不同组。

混合控制法:将直接表示法与字段直接译码法混合使用,以便在微指令字长、并行性及执行速度和灵活性等方面进行折衷,发挥它们的共同优点。

9)简述微程序控制器和硬布线控制器的设计方法?

答: 微程序控制器设计方法: 1)分析指令执行的数据通路,列出每条指令在所有寻址方式下的执行操作流程和每一步所需要的控制信号;

2)对指令的操作流程进行细化,将每条指令的每个微操作分配到具体的机器周期的各个时间节拍信号上;

(3)设计微指令格式、微命令编码方法和程序组织方式;

(4)编制每条指令的微程序;并按照所设计的微程序组织方式存放到控存中;

第 48 页 共 70 页