现要求单地址指令255条,∴可有一条编码作扩展码 ∴零地址指令最多为1×2^3=8条 不满足题目要求
∴不可能以扩展码为其编码。
2、某指令系统指令长为16位,每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。
(1)若双操作数为15条,无操作数为64条,问单操作数最多可以有多少条? (2)若若双操作数为15条,单操作数为62条,问无操作数最多可以有多少条?
466
解:(1)((2-15)2-x)2=64 x=63(条)
466
(2) ((2-15)2-62)2=128 (条)
3、设系统指令长16位,每个操作数的地址码长4位,共有11条三地址指令,72条二地址指令,64条零地址指令。问最多还有多少条一地址指令。 解:((((2^4-11)*2^4-72)*2^4)-X)*2^4=64 解得X=124条
第六章 CPU
一、选择题
1、 控制器的功能描述完整的是( D)
A)产生时序信号 B) 从主存取出一条指令 C)完成指令译码
D)从主存取出一条指令、完成指令译码、产生时序信号、指挥各部件完成指令指定的操作 2、 存储微程序的存储器称为(C )
A)主存 B) Cache C)控存 D)辅存
3、 CPU存放当前正在执行的指令并为译码部件提供信息的部件是(C )
A)指令译码器 B) 程序计数器 C)指令寄存器 D)地址寄存器 4、 构成控制信号序列的最小单位是(C )
A)微程序 B) 微指令 C)微命令 D)机器指令 5、 微程序控制器比硬布线控制器慢,原因是(D ) A)增加了从外存读微指令的时间。 B) 增加了从主存读微指令的时间。 C)增加了从IR中读微指令的时间。 D)增加了从控存读微指令的时间。
6、 控制器同步控制方式是指( A ) A)由统一时序信号控制的方式。 B) 由握手信号控制的方式。 C)由中断控制的方式。 D)程序查询控制方式。
7、 指令流水线中,不同的指令在指令流水的不同功能段中可以(D ) A)顺序 B) 选择 C)循环 D)并行 9、微程序存放在( C )。
A 主存中 B 堆栈中 C 只读存储器中 D 磁盘中 10、微指令中的微地址表示(D )
A 微操作的对象 B 存放微操作结果的地址 C 微操作数地址 D 后继微指令地址 11、在一个微指令周期中( D)
A 只能执行一个微操作 B 能顺序执行多个微操作 C 只能执行多个互斥微操作 D 能并行执行多个微操作 12、在微程序控制中,把操作控制信号编成( A )。
6
A 微命令 B 微地址 C 操作码 D 程序 13、从一条指令的启动到下一条指令的启动的间隔时间称为( D )。 A 时钟周期 B 机器周期 C 工作周期 D 指令周期 14、硬布线控制器指的是( A)
A.组合逻辑控制器 B.微程序控制器
C.可编程逻辑部件控制器 D.一种新型控制器
15、在微程序控制器中,机器指令与微指令的关系是( B)。 A、每条机器指令由一条微指令来执行;
B、每条机器指令由一段用微指令编程的微程序来解释执行; C、一段机器指令组成的程序可由一条微指令来执行; D、一条微指令由若干条机器指令组成;
16、在微程序控制器中,执行指令微程序的首条微指令地址是怎么得到的(D ) A。程序计数器PC B。前条微指令 C。uPC+1 D。指令操作码译码 3.程序计数器PC在 B 中。
? A.运算器 B.控制器 ? C.存储器 D.I/O接口 4.计算机主频的周期是指 C 。
? A.指令周期 B.时钟周期 ? C.CPU周期 D.存取周期 5.CPU内通用寄存器的位数取决于 B 。 ? A.存储器容量 B.机器字长 ? C.指令的长度 D.CPU的管脚数 6.以硬布线方式构成的控制器也叫 A 。 ? A.组合逻辑型控制器 B.微程序控制器 ? C.存储逻辑型控制器 D.运算器
7.一个节拍脉冲持续的时间长短是 C 。 ?A.指令周期 B.机器周期 ?C.时钟周期 D.以上都不是
8.直接转移指令的功能是将指令中的地址代码送入 C 。 ?A.累加器 B.地址寄存器 ?C.PC D.存储器 9.状态寄存器用来存放 D 。
?A.算术运算结果 B.逻辑运算结果
?C.运算类型 D.算术、逻辑运算及测试指令的结果状态 10.微程序放在 C 中。
?A.指令寄存器 B.RAM ?C.控制存储器 D.内存 16.与微指令的执行周期对应的是 C /D 。 ? A.指令周期 B.机器周期 C.节拍周期 D.时钟周期 二、填空题
1、根据设计方法不同,控制器分为 微程序控制器 和 组合逻辑控制器 两种。
2、计算机在执行程序的过程中,控制器控制程序的运行总是处于 取指令 、分析指令和 执行指令 的循环这中。
3、在微程序控制器中,一条机器指令对应于一个 微程序 ,一个微程序对应若干
7
条 微指令 ,一条微指令包含若干个 微命令 。
4、微程序控制的核心部件是存储微程序的 控制存储器,它一般用 只读存储器 构成。
5.微程序入口地址是根据 指令操作码 通过 译码 产生的。
6.微程序控制器的核心部件是 CS ,它一般用 ROM 构成。
7.一条微指令可划分为控制字段和下址字段,微指令格式分为水平型微指令和垂直型微指令。
1.目前的CPU包括 运算器 , 控制器 和CACHE(一级)。
2.CPU中保存当前正在执行的指令的寄存器为 地址寄存器 ,保存下一条指令地址的寄存器为 程序计数器(PC) 。
3.CPU从主存取出一条指令并执行该指令的时间叫 指令周期 ,它常用若干个---- 机器周期 来表示,而后者又包含若干个 时钟周期 。
4.在程序执行过程中,控制器控制计算机的运行总是处于 取指令 、分析指令和 执行指令 的循环之中。
9.任何指令的第一个周期一定是 取址周期 。
10.一条机器指令的执行可与一段微指令构成的 微程序 相对应,微指令可由一系列 微命令 组成。
11.微程序设计技术是利用 软件 方法设计 控制单元 的一门技术。 12.在同一微周期中 不可能同时出现 的微命令叫互斥的微命令;在同一微周期中 可以同时出现 的微命令叫相容的微命令。显然, 相容的微命令 不能放在一起译码。 三、简答题
1、简述控制器的组成和功能。
控制器的功能 :控制程序的执行, 1.取指令 2.分析指令 3.执行指令 4.控制程序和数据的输入与结果输出5.对异常情况和某些请求的处理。
控制器的组成:程序计数器(PC)即指令地址寄存器,存放即将要执行的下一条指令地址。有两种途径来形成指令地址,其一是顺序执行的情况,通过程序计数器加“1”形成下一条指令地址(如存储器按字节编址,而指令长度为4个字节,则加“4”)。其二是由转移类指令形成转移地址送往PC。.指令寄存器(IR)存放当前正在执行的指令。 指令译码器或操作码译码器对指令寄存器中的操作码进行分析解释,产生相应的控制信号。脉冲源及启停线路、时序控制信号形成部件。
2、什么是微指令?什么是微程序?指令、微程序、微指令三者的关系是什么?
微指令:在微程序控制的计算机中,将由同时发出的控制信号所执行的一组微操作称为微指令,将一条指令分成若干条微指令,按次序执行这些微指令,就可以实现指令的功能。组成微指令的微操作又称微命令,即微操作的控制信号。
微程序:计算机的程序由指令序列构成,而计算机每条指令的功能均由微指令序列解释完成,这些微指令序列的集合就叫做微程序。 微周期:执行一条微指令所需的时间。
3、简要说明下列部件在计算机的取指周期和执行周期中的作用。 1) 程序计数器PC 2) 指令寄存器IR
3) 算术逻辑运算部件ALU 4) 存储器数据寄存器MDR 5) 存储器地址寄存器MAR
解:1)程序计数器PC:存放指令地址
2)指令寄存器IR:存放当前指令
3)算术逻辑运算部件ALU:进行算逻运算
8
4)存储器数据寄存器MDR:存放写入到内存或从内存读出的数据或指令
5)存储器地址寄存器MAR:存放写入到内存或从内存读出的数据或指令的地址 4、简述微程序控制的基本原理。 判断题
1.一个指令周期由若干个机器周期组成。T
2.非访内指令不需从内存中取操作数,也不需将目的操作数存放到
内存,因此这类指令的执行不需地址寄存器参与。F(这类指令不访存, 即不从内存中取操作数。它一般需要两个CPU周期, 即取指译码周期和执行周期。第1个CPU周期为取指、译码周期CPU要完成以下三个操作: ●从内存中取出指令; ●指令(PC)指针加1;
●对指令操作码进行译码并执行该指令的操作。 第2个CPU周期为执行周期, )
3.组合逻辑控制器比微程序控制器的速度快。T
4.流水线中的相关问题是指在一段程序的相邻指令之间存在某种信 赖关系,这种关系影响指令的执行。T
5.微程序控制控制方式与硬布线控制方式相比, 最大的优点是提高了 指令的执行速度。F
6.微程序控制器中的控制存储器可用PROM、EPROM或闪存实现。F 7.指令周期是指人CPU从主存取出一条指令开始到执行这条指令完 成所需的时间。T
8.控制存储器是用来存放微程序的存储器, 它比主存储器速度快。T 9.机器的主频最快,机器的速度就最快。F(因为速度还与字长有关)
补充
? CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需的时间通常叫做一个指令周期。指令周期是取出并执行一条指令的时间
? 机器周期:(CPU周期)完成一个基本操作所需要的时间称为机器周期。(CPU访问一次内存所需要的时间)。机器周期是指cpu主频的倒数
? 一个CPU周期时间包含有若干个时钟周期,也称为振荡周期,定义为时钟脉冲的倒数。在一个时钟周期内,CPU仅完成一个最基本的动作 。时钟周期(通常称为节拍脉冲或T周期)是处理操作的最基本单位
? 时钟周期是最小单位,机器周期需要1个或多个时钟周期,指令周期需要1个或多个机器周期
? 指令执行过程:取指、计算地址、取操作数、运算送结果。
? 四种典型指令分析:非访内指令(这类指令不访存, 即不从内存中取操作数。它一般需要两个CPU周期, 即取指译码周期和执行周期)、直接访内指令(这类指令是直接访问内存, 即直接从内存中取操作数。一般需要三个CPU周期)、间接访内指令(需要四个CPU周期)、程序控制指令(这类指令的功能是改变指令执行的顺序, 其指令周期也由两个CPU周期组成)结论:任何一条指令的第一个周期都应该是取指周期。 ? 控制存储器(CS):用来存放微程序的存储器,该存储器主要存放控制命令(信号)与下一条执行的微指令地址(简称为下址)。 一般计算机指令系统是固定的,所以实现指令系统的微程序也是固定的,于是控制存储器可以用只读存储器实现。执行一条指令实际上就是执行一段存放在控制存储器中的微程序。
? 微指令分为两部分:控制字段(产生控制信号),下址字段(指出下一条微指令的地址)。P186图
? 微指令的编译法:直接控制法、字段直接编译法(选出互斥的微命令,并将这些
9
微命令编成一组,成为微指令字的一个字段,用二进制编码来表示, 就是字段直接编译法。)字段间接编译法、常数源字段E.
? 微指令的格式:水平型微指令;垂直型微指令;混合型微指令。水平型微指令是直接控制法编码的,属于水平行微指令。其特点是一条微指令中定义并执行多个并行操作微命令。直接控制法、字段编译法(直接、间接)用在同一条水平型微指令中。 垂直型微指令是采用微操作码编译法,由微操作码规定微指令的功能。其特点是不强调实现微指令的并行控制功能,通常一条微指令只要求能控制一二种操作。其格式和指令相似:每条微指令有一个微操作码。 ? 水平型微指令和垂直型微指令的比较
(1)水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令差。 (2)水平型微指令执行一条指令时间短,垂直型微指令执行时间长。
(3)水平型微指令的微指令字长,微程序短;垂直型微指令字短,微程序长。 (4)用户难以掌握水平型微指令,垂直型微指令比较容易掌握。
? 控制器控制信号的产生是采用逻辑电路,也称组合逻辑电路控制方式。
? 组合逻辑控制器也称硬布线控制器。与微程序控制相比,硬布线控制的速度较快,主
要取决于逻辑电路的延迟。一旦控制部件构成后,除非重新设计和物理上对它重新布线,否则要想增加新的控制功能是不可能的。因此,近年来在某些超高速新型计算机结构中,又选用了硬布线控制器,或与微程序控制器混合使用 ? 硬布线控制与微程序控制之间最显著的差距在于: 1.实现
硬布线控制是通过组合逻辑电路产生操作命令的;硬布线逻辑电路不规整,走线复杂而凌乱,一旦设计好,一般是无法修改,添加和修改指令几乎是不可能的。
微程序控制是通过执行存放在控制存储器中的微程序产生的。微程序放在ROM之中,线路较为规整,指令的修改和添加只要更换ROM芯片即可,便于指令的扩充。所以,复杂指令集的计算机一般都采用微程序 2.性能
同样的半导体工艺的水平下,微程序控制的速度要比硬布线控制低。
而硬布线逻辑的速度主要取决于电路的延迟,在超高速机器,对影响速度的关键部分,一般采用硬布线逻辑。在出现的RISC体系结构的计算机中,一般选用硬布线控制逻辑。 ? 控制器的控制方式:同步控制方式;异步控制方式;联合控制方式; 人工控制 ? 产生后继微指令地址的方法:以增量方式产生后继微地址、增量与下址字段结合产生
后继微地址 、多路转移方式、微中断方式。
第八章 第九章
一.判断题
1.计算机的主存是由RAM和ROM两种半导体存储器组成的。 答:正确。 2.CPU可以直接访问主存,而不能直接访问辅存。 答:正确。 3.外(辅)存比主存的存储容量大、存取速度快。 答:错误。 4.动态RAM和静态RAM都是易失性半导体存储器。 答:正确。 5.Cache的功能全部由硬件实现。 答:正确。
6.引入虚拟存储器的目的是为了加快辅存的存取速度。 答:错误。
7.多体交叉存储器主要是为了解决扩充容量的问题。 答:错误。多体交叉存储器主要是为了提高存取速度,增加带宽。
8.Cache和虚拟存储器的存储管理策略都利用了程序的局部性原理。 答:正确。 9.多级存储体系由Cache、主存和辅存构成。 答:正确。
10.在虚拟存储器中,当程序正在执行时,由编译器完成地址映射。 答:错误(由操作系统完成)。
10