一、单项选择题
1.指令系统中采用不同的寻址方式的主要目的是( )。
A.增加内存容量 B.提高访存速度 C.简化指令译码 D.编程方便
2.以程序计数器(PC)作为基础地址的寻址方式是( )。
A.寄存器间接寻址 B.相对寻址 C.基址寻址 D.变址寻址 4.寄存器间接寻址方式中,操作数在( )中。 A.通用寄存器 B.堆栈 C.主存单元 D.指令本身
5.采用基址寻址可扩大寻址范围,且( )。 A.基址寄存器内容由用户确定,在程序执行过程中不可变
B.基址寄存器内容由操作系统确定,在程序执行过程中不可变
C.基址寄存器内容由操作系统确定,在程序执行过程中可变
D.基址寄存器内容由用户确定,在程序执行过程中可变
6.采用变址寻址可扩大寻址范围,且( )。
A.变址寄存器内容由用户确定,在程序执行过程中不可变
B.变址寄存器内容由操作系统确定,在程序执行过程中不可变
C.变址寄存器内容由操作系统确定,在程序执行过程中可变
D.变址寄存器内容由用户确定,在程序执行过程中可变
7.变址寻址和基址寻址的有效地址形成方式类似,但是( )。
A.变址寄存器的内容在程序执行过程中是不可变
的
B.在程序执行过程中,变址寄存器、基址寄存器和内容都是可变的
C.在程序执行过程中,基址寄存器的内容不可变,变址寄存器中的内容可变
D.基址寄存器的内容在程序执行过程中是可变的 8.设变址寄存器为X,形式地址为D,某机具有先变址再间址的寻址方式,则这种寻址方式的有效地址为( )。
A.EA一(X)+D B.EA一(X)+(D)
C EA一((X)+D) D.EA一((X)+(D)) 9.指令寻址方式有顺序寻址和跳跃寻址两种,采用跳跃寻址方式可以实现( )。
A.程序浮动 B.程序的无条件转移和浮动 C.程序的无条件转移和条件转移 D.程序的调用
10.扩展操作码是( )。
A.操作码字段以外的辅助操作字段的代码 B.指令格式中不同字段设置的操作码
C.一种指令优化技术,加快指令的移码和执行 D.一种指令优化技术,即让操作码的长度随地址数的减少而增加,不同地址数的指令可以具有不同的操作码长度
11.设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(用补码表示),若CPU每当从存储器取出一个字节时,即自动完成(PC)+1一PC。设当前PC的内容为2009H,要求转移到2000H地址,则该转移指令第二个字节的内容应为( )。
A.F5H 1111 0101 B.F7H 1111 0111 C 08H 0000 1000 D.09H 0000 1001 2000 – 200B = - B = 1000 1011
12.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序是( )。
A.直接、立即、间接 B.直接、间接、立即 C 立即、直接、间接 D.立即、间接、直接 13.为了缩短指令中地址码的位数,应采用( )寻址。
A.立即数 B.寄存器 C.直接 D.间
接
14.在指令格式设计中,采用扩展操作码的目的是( )。
A.增加指令长度 B.扩大寻址空间 C.增加指令数量 D.提高指令执行速度 15.设机器字长为16位,存储器按字节编址,CPU读取一条单字长指令后,PC值自动加( )。
A.0 B.1 C.2 D.4 16.执行操作所需的数据不可能来自( )。 A.控制存储器 B.寄存器 C指令本身 D.存储器
17.通常一地址格式的算术运算指令,另一个操作数隐含在( )中。
A.累加器 B.操作数寄存器 C.通用寄存器 18.在一地址格式的指令中,下列( )是正确的。
A.仅有一个操作数,其地址由指令的地址码提供、 B.可能有一个操作数,也可能有两个操作数 C.一定有两个操作数,另一个是隐含的 D.无正确项
19.( )对于实现程序浮动提供了较好的支持。 A 间接寻址 B.基址寻址 C.变址寻址 D 相对寻址
20.( )便于处理数组问题。
A.间接寻址 B基址寻址 C.变址寻址 D 相对寻址
21. RISC思想主要基于的是( )。
A.减少指令的平均执行周期数 B.减少指令的复杂程度
C.减少硬件的复杂程度 D.便于编译器编写
RISC是在CISC技术的基础上发展起来的,人们通过对CISC指令系统的统计表明,最常用的是一些比较简单的指令,仅占指令总数的20%,但在程序中出现的频率却占80%。所以RISC思想主要基于减少指令的复杂程度,通过简化指令使计算机的结构更加简单合理,从而提高处理速度。
22.(多选)下列关于精简指令RISC的描述正确的是( )
A.支持的寻址方式更多 B.大部分指令在一个机器周期内完成
C.通用寄存器的数量多 D.指令字长不固定
RISC的特点是:
(1)设计时尽量选取使角频率最高的一些简单指令,以及用途大但不复杂的指令,因此指令的种类少(一-般不超过128种);
(2)指令长度固定(一般为32位); (3)指令格式种类少(一般不超过4种); (4)寻址方式种类少(一-般不超过4种); (5) CPU内的所有操作,除了访问存储器的取数和存数( Load/Store指令)外,其余指令的操作都在寄存器之间进行;
(6)CPU中有一个较大的通用寄存器组(通用寄存器的数量至少为32个);
(7)大部分指令(80%以上)的执行周期在一个机器周期之内;
(8)控制器采用硬接线方式;
(9)一般用高级语言编程,特别重视编译优化工作,以减少程序执行时间。
根据这些特点,所以答案选B和C。
二、综合应用题
5.某指令系统指令字长16位,如果操作码固定为4位,则三地址格式的指令共有几条?如果采用扩展操作码技术,对于三地址、二地址、一地址和零地址这四种格式的指令,每种指令最多可以安排几条?写出它们的格式。
答:指令字长16位,如果操作码固定为4位,则三地址格式指令共有16条。若采用扩展操作码技术时,这16位字长的指令有15条三地址格式指令、15条二地址格式指令、15条一地址格式指令和16条零地址格式指令,共61条。指令格式如下:
4位操作码 15条三地址格式指令 8位操作码 15条二地址格式指令 12位操作码 15条一地址格式指令 16位操作码 16条零地址格式
7.某计算机的指令字长16位,采用扩展操作码,
操作数地址取4位。假设该指令系统已有X条三地址指令,Y条二地址指令,没有零地址指令,问最多还有几条一地址指令?
答:根据题意,三地址、二地址和一地址指令的操作码位数分别是4位、8位和12位,故一地址指令多还有
[(24-X)×24-Y]×24条,
6.设某机共能完成120种操作,CPU有8个通用寄存器(12位),主存容量为16 K字,采用寄存器一存储器型指令。
(1)欲使指令可直接访问主存的任一地址,指令字长应取多少位?
(2)若在上述设计的指令字中设置一寻址特征位X,且X=O表示某个寄存器做基址寄存器,画出指令格式。试问采用基址寻址可否访问主存的任一单元?为什么?如不能,提出一种方案,使指令可访问主存的任一位置。
答:(1)该机的指令长应包括14位的地址码、3位寄存器编码和7位操作码,即指令字长一14+3+7—24,指令格式为:
7 3 14
OP R A (2)增加一位寻址特征位x,且X=O表示某个寄存器作基址寄存器RB。因为通用寄存器仅12位不能覆盖16K地址空间,可将寄存器内容左移2位,低位补0,形成14位基地址,然后与形式地址相加,所得有效地址即可访问16 K字存储器的任一单元。其指令格式如下:
7 3 1 3
10 OP
R X R B A