计算机组成原理全部习题解答(6)

2019-09-02 19:20

答:基址寻址是面向系统的,主要用于将用户程序的逻辑地址(用户编写程序时所使用的地址)转换成主存的物理地址(程序在主存中的实际地址),以便实现程序的再定位。例如在多道程序运行时,需要由系统的管理程序将多道程序装入主存。由于用户在编写程序时,不知道自己的程序应该放在主存的哪一个实际物理地址中,只能按相对位置使用逻辑地址编写程序。当用户程序装入主存时,为了实现用户程序的再定位,系统程序给每个用户程序分配一个基准地址。程序运行时,该基准地址装入基址寄存器,通过基址寻址,可以实现逻辑地址到物理地址的转换。由于系统程序需通过设置基址寄存器为程序或数据分配存储空间,所以基址寄存器的内容通常由操作系统或管理程序通过特权指令设置,对用户是透明的。用户可以通过改变指令字中的形式地址A来实现指令或操作数的寻址。另外基址寄存器的内容一般不进行自动增量和减量。

变址寻址是面向用户的,主要用于访问数组、向量、字符串等成批数据,用以解决程序的循环控制问题。因此变址寄存器的内容是由用户设定的。在程序执行过程中,用户通过改变变址寄存器的内容实现指令或操作数的寻址,而指令字中的形式地址A是不变的。变址寄存器的内容可以进行自动增量和减量。

5.5 简述相对寻址和立即寻址的特点。

答:相对寻址方式是将程序计数器 PC 的当前内容与指令中给出的形式地址相加形成操作数的有效地址。 立即寻址方式是指指令的地址码部分给出的不是操作数的地址而是操作数本身。即指令所需的操作数由指令的形式地址直接给出。

5.6 什么叫堆栈?堆栈操作的特点是什么?堆栈操作是如何寻址的?

答:计算机中的堆栈是指按先进后出(FILO)或者说后进先出(LIFO)原则进行存取的一个特定的存储区域。 堆栈操作的特点是:遵循先进后出原则进行信息的存取。数据按顺序存入堆栈称为数据进栈或压入;从堆栈中按与进栈相反的顺序取出数据称为出栈或弹出。堆栈的压入和弹出操作总是根据SP的内容按地址自动增量和自动减量方式在栈顶进行。

堆栈操作的寻址方式:通常用一个寄存器或存储器单元指出栈顶的地址,这个寄存器或存储器单元称为堆栈指针SP,SP的内容永远指向堆栈的栈顶。堆栈的压入和弹出操作总是根据SP的内容按地址自动增量和自动减量方式在栈顶进行。

5.7 一个较完善的指令系统应包括哪些类型的指令?

答:一个完善的指令系统应包括的基本指令有:数据传送指令、算术逻辑运算指令、移位操作指令、堆栈操作指令、字符串处理指令、程序控制指令、输入/输出指令等。一些复杂指令的功能往往是一些基本指令功能的组合。

5.8 转子指令与转移指令有哪些异同?

答:转子指令与转移指令的执行结果都是实现程序的转移,但两者的区别在于:转移指令的功能是转移到指令给出的转移地址处去执行指令,一般用于同一程序内的转移,转移后不需要返回原处,因此不需要保存返回地址。转子指令的功能是转去执行一段子程序,实现的是不同程序之间的转移。因为子程序执行完后必须返回主程序,所以转子指令必须以某种方式保存返回地址,以便返回时能正确返回到主程序原来的位置。

5.9 设某机指令长为16位,每个操作数的地址码为6位,指令分为单地址指令、双地址指令和零地址指令。若双地址指令为K条,零地址指令为L条,问最多可有多少条单地址指令? 答:双地址指令的操作码占4位,可有24条指令,现占了K条。

单地址指令的操作码占10位,可有(24-K)×26条指令;

零地址指令的操作码占16位,现需要L条指令,单地址指令要让出??L?条指令,所以 6?2??单地址指令可有(24-K)×26-??L? 条 6??2?5.10 设某机指令长为16位,每个地址码长为4位,试用扩展操作码方法设计指令格式。其中三地址指令有10条,二地址指令为90条,单地址指令32条,还有若干零地址指令,问零地址指令最多有多少条?

答:{[(24-10)×16-90]×16-32}×16=1024条

5.11 设某机字长为32位,CPU有32个32位通用寄存器,有8种寻址方式包括直接寻址,间接寻址、立即

寻址、变址寻址等,采用R—S型单字长指令格式。共有120条指令,试问:

(1) 该机直接寻址的最大存储空间为多少?

(2) 若采用间接寻址,则可寻址的最大存储空间为多少?如果采用变址寻址呢? (3) 若立即数为带符号的补码整数,试写出立即数范围。

答:(1)该机单字长指令字长为32位,其中:120条指令操作码占7位,R寻址中32个通用寄存器占5位,S寻址中8种寻址方式占3位,32个通用寄存器占5位。如果采用直接寻址,可以不用寄存器,则直接寻址可用的字段长度为32-7-5-3=17位,故该机可直接寻址的最大存储空间为217=128K (2)间接寻址可寻址的最大存储空间为:232。变址寻址可寻址的最大存储空间为:232。

(3)采用立即寻址时,立即数所占字段长度与直接寻址可用的字段长度相同为17位,考虑到补码符号占用1位,故立即数范围为-216~216-1。

5.12简述RISC的主要特点。

5.13 选择题

(1) 计算机系统中,硬件能够直接识别的指令是 A 。

A. 机器指令 B. 汇编语言指令 C. 高级语言指令 D. 特权指令 (2) 指令系统中采用不同的寻址方式的主要目的是 B 。

A. 增加内存的容量 B. 缩短指令长度,扩大寻址范围 C. 提高访问内存的速度 D. 简化指令译码电路

(3) 在相对寻址方式中,若指令中地址码为X,则操作数的地址为 B 。

A. X B. (PC)+X C. X+段基址 D. 变址寄存器+X (4) 在指令的地址字段中直接指出操作数本身的寻址方式,称为 B 。

A. 隐含地址 B. 立即寻址 C. 寄存器寻址 D. 直接寻址 (5) 支持实现程序浮动的寻址方式称为 B 。

A. 变址寻址 B. 相对寻址 C. 间接寻址 D. 寄存器间接寻址 (6) 在一地址指令格式中,下面论述正确的是 C 。

A. 只能有一个操作数,它由地址码提供 B. 一定有两个操作数,另一个是隐含的 C. 可能有一个操作数,也可能有两个操作数

D. 如果有两个操作数,另一个操作数一定在堆栈中。 (7) 在堆栈中,保持不变的是 C 。

A. 栈顶 B. 堆栈指针 C. 栈底 D. 栈中的数据

(8) 在变址寄存器寻址方式中,若变址寄存器的内容是4E3CH,给出的偏移量是63H则它对应的

有效地址是 D 。

A. 63H B. 4D9FH C. 4E3CH D. 4E9FH

(9) 设寄存器R的内容(R)=1000H,内存单元1000H的内容为2000H,内存单元2000H的内容为

3000H,PC的值为4000H。若采用相对寻址方式,-2000H (PC) 访问的操作数是 C 。 A. 1000H B. 2000H C. 3000H D. 4000H (10) 程序控制类指令的功能是 D 。

A. 进行算术运算和逻辑运算

B. 进行主存与CPU之间的数据传送

C. 进行CPU和I/O设备之间的数据传送 D. 改变程序执行的顺序

(11) 算术右移指令执行的操作是 B 。

A. 符号位填0,并顺次右移1位,最低位移至进位标志位 B. 符号位不变,并顺次右移l位,最低位移至进位标志位

C. 进位标志位移至符号位,顺次右移1位,最低位移至进位标志位 D. 符号位填1,并顺次右移1位,最低位移至进位标志位 (12) 下列几项中,不符合RISC指令系统的特点是 B 。

A. 指令长度固定,指令种类少

B. 寻址方式种类尽量多,指令功能尽可能强 C. 增加寄存器的数目,以尽量减少访存次数

D. 选取使用频率最高的一些简单指令以及很有用但不复杂的指令

5.14 填空题

(1) 一台计算机所具有的所有机器指令的集合称为该计算机的 ① 。它是计算机与 ② 之间

的接口。

答:① 指令系统 ② 用户

(2) 在指令编码中,操作码用于表示 ① ,n位操作码最多可以表示 ② 条指令。地址码用

于表示 ③ 。 答:① 指令应执行的操作和应具有的功能 ② 2n ③ 与操作数据相关的地址信息 (3) 在寄存器寻址方式中,指令的地址码部分给出的是 ① ,操作数存放在 ② 。 答:① 某一寄存器的编号 ② 寄存器中

(4) 采用存储器间接寻址方式的指令中,指令的地址码中字段中给出的是 ① 所在的存储器单

元地址,CPU需要访问内存 ② 次才能获得操作数。 答:① 是操作数的有效地址EA ② 2

(5) 操作数直接出现在指令的地址码字段中的的寻址方式称为 ① 寻址;操作数所在的内存单

元地址直接出现在指令的地址码字段中的的寻址方式称为 ② 寻址。 答:① 立即寻址 ② 直接寻址

(6) 相对寻址方式中,操作数的地址是由 ① 与 ② 之和产生的。 答:① PC当前的内容 ② 形式地址部分给出的位移量 5.14 判断下列各题的正误。如果有误,请说明原因。

(1) 利用堆栈进行算术/逻辑运算的指令可以不设置地址码。 √ (2) 指令中地址码部分所指定的寄存器中的内容是操作数的有效地址的寻址方式称为寄存器寻址。

×

原因:寄存器间接寻址

(3) 一条单地址格式的双操作数加法指令,其中一个操作数来自指令中地址字段指定的的存储单

元,另一个操作数则采用间接寻址方式获得。 × 原因:另一个操作数来自累加器

(4) 在计算机的指令系统中,真正必需的指令种类并不多,很多指令都是为了提高机器速度和便

于编程而引入的。 √

(5) RISC系统的特征是使用了丰富的寻址方式。 ×

原因:RISC系统的特征之一:指令数目较少,指令长度固定,指令格式少,寻址方式种类少

第六章 作业解答

6.1 控制器的基本功能是什么?它由哪些基本部件组成?各部件作用是什么?

答:控制器的主要任务是:根据不同的指令、不同的状态条件,在不同的时间,产生不同的控制信号,控制

计算机的各部件自动、协调地进行工作。其基本功能包括: 1. 控制指令的正确执行

2. 控制程序和教据的输入及结果的输出 3. 异常情况和特殊请求的处理 控制器的基本部件包括:

1. 指令部件:用于完成取指令和分析指令

2. 时序控制部件:用于产生一系列时序信号,为各个微操作定时,以保证各个微操作的执行顺序。

3. 微操作控制信号形成部件:根据指令部件提供的操作控制电位、时序部件所提供的各种时序信号,以及有关的状态条件,产生机器所需要的各种微操作控制信号。 4. 中断控制逻辑:用于实现对异常情况和特殊请求的处理。

5. 程序状态寄存器PSR:用于存放程序的工作状态(如管态、目态等)和指令执行的结果特征(如ALU运算的结果为零、结果为负、结果溢出等),表明系统的基本工作状态。

6. 控制台:用于实现人与机器之间的通信联系,如启动或停止机器的运行、监视程序运行过程、对程序进行必要的修改或干预等。

6.2 CPU中有哪几个最主要的寄存器?它们的主要作用是什么?

答:

(1) 指令寄存器IR:指令寄存器用于存放当前正在执行的指令。当指令从主存取出后,经MDR传送到指令寄存器中,以便实现对一条指令执行的全部过程的控制。

(2) 程序计数器PC:程序计数器又称指令计数器、指令地址寄存器,用于保证程序按规定的序列正确运行,并提供将要执行指令的指令地址。

(3) 累加寄存器AC:用于暂存操作数据和操作结果。

(4) 程序状态寄存器PSR:用于以存放程序的工作状态(如管态、目态等)和指令执行的结果特征(如ALU运算的结果为零、结果为负、结果溢出等),把它所存放的内容称为程序状态字(PSW)。PSW表明了系统的基本状态,是控制程序执行的重要依据。

(5) 地址寄存器MAR:用于存放所要访问的主存单元的地址。它可以接受来自PC的指令地址,或接受来自地址形成部件的操作数地址。

(6) 数据缓冲寄存器MDR(或MBR):用于存放向主存写入的信息或从主存中读出的信息。

6.3 什么是同步控制?什么是异步控制?什么是联合控制?在同步控制方式中,什么是三级时序系统?

答:同步控制方式是指任何指令的运行或指令中各个微操作的执行,均由确定的具有统一基准时标的时序信号所控制。每个时序信号的结束就意味着安排完成的工作已经完成,随即开始执行后续的微操作或自动转向下条指令的运行。

异步控制方式不再有统一的周期、节拍,各个操作之间采用应答方式衔接,前一操作完成后给出回答信号,启动下一个操作。

联合控制方式是同步控制与异步控制相结合的方式。通常的设计思想是:在功能部件内部采用同步方式或以同步方式为主的控制方式,在功能部件之间采用异步方式。

6.4 试述指令周期、CPU周期、节拍周期三者的关系。

答:指令周期是指从取指令、分析指令到执行完该指令所需的全部时间。机器周期又称CPU周期,是指令执行过程中的相对独立的阶段。把一个机器周期等分成若干个时间区间,每一时间区间称为一个节拍,一个节拍对应一个电位信号,控制一个或几个微操作的执行。

由于各种指令的操作功能不同,繁简程度不同,因此各种指令的指令周期也不尽相同。一条指令的执行过程(即指令周期)由若干个机器周期所组成,每个机器周期完成一个基本操作。一个机器周期中包含若干节拍。

6.5 按图6-9 CPU结构框图,试写出执行下面各条指令的控制信号序列。

(1)ADD R0,R1 (2)ADD (R0),R1 (3)ADD (R0)+,R1

注:指令中第一个地址为源地址,第二个地址为目标地址。 答:(1)ADD R0,R1 操作流程 (1) (PC)→MAR,Read (2) (PC)+1→PC INC、F→PC 控制信号序列 PC→B、Gon、F→MAR、Read、F→Y (3) M→MDR→IR (4) (R0)→Y (5) (Y)+(R1)→R1

(2)ADD (R0),R1 操作流程 (1) (PC)→MAR,Read (2) (PC)+1→PC (3) M→MDR→IR (4) (R0)→MAR,Read (5) M→MDR→Y (6) (Y)+(R1) →R1

(3)ADD (R0)+,R1 操作流程 (1) (PC)→MAR,Read (2) (PC)+1→PC (3) M→MDR→IR (4) (R0)→MAR,Read (5) (R0)+1→R0 (6) M→MDR→Y (7) (Y)+(R1) →R1 MDR→B、Gon、F→IR R0→B、Gon 、F→Y R1→B、ADD、F→R1 控制信号序列 PC→B、Gon、F→MAR、Read、F→Y INC、F→PC MDR→B、Gon、F→IR R0→B、Gon、F→MAR、Read MDR→B、Gon、F→Y R1→B、ADD、F→R1 控制信号序列 PC→B、Gon、F→MAR、Read、F→Y INC、F→PC MDR→B、Gon、F→IR R0→B、Gon、F→MAR、Read、F→Y INC、F→R0 MDR→B、Gon、F→Y R1→B、ADD、F→R1

6.6 试分析在模型机中执行下列指令的操作流程。

(1)ADD (R0),R1 (2)SUB X(R0),(R1) (3)MOV (R0)+,(R1) 答:

(1)ADD (R0),R1 周期、节拍 FT0 FT1 FT2 FT3 ST0 ST1 ST2 ST3 ET0 ET1 操作流程 (PC)→MAR Read,(PC)+1→PC (MDR)→IR 1→ST (R0)→MAR Read (MDR)→TEMP 1→ET (TEMP)→Y (R1)+(Y) →R1,END (2)SUB X(R0),(R1) 周期、节拍 FT0 操作流程 (PC)→MAR


计算机组成原理全部习题解答(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2012西城一模高三英语试题解析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: