《第四章--指令系统(练习题答案)》由会员分享,可在线阅读,更多相关《第四章--指令系统(练习题答案)(23页珍藏版)》请在金锄头文库上搜索。
1、1,第四章 指令系统,复习提纲本章知识点提要 一、主要概念(名词术语); 二、指令格式一般格式(字段的作用); 定长操作码和扩展操作码指令格式; 三、寻址方式 四、指令格式分析与设计 五、CISC和RISC的基本概念 二者区别及RISC的特点。,2,一、 概念 指令、指令系统、操作码、地址码、扩展操作码技术、形式地址、有效地址、指令寻址、数据寻址、寻址方式(立即寻址、直接寻址、间接寻址、基址寻址、变址寻址、相对寻址、隐含寻址、寄存器寻址、堆栈寻址)、CISC、RISC,3,二、指令格式分析与设计方法举例 例、某16位机指令格式结构如下所示,试分析指令格式及寻址方式特点。,OP,目标寄存器,源寄
2、存器,15 10 9 8 7 4 3 0,【解答】 (1)单字长二地址指令; (2)OP即操作码字段6位,可指定64条指令; (3)两个操作数都在寄存器中,故为R-R型指令,可以分别指定16个通用寄存器; (4)该类指令结构常用于算逻运算类指令。,4,三、填空题 1、指令系统中采用不同寻址方式的目的主要是(B)。 A.提供扩展操作码的可能并降低指令译码难度; B.缩短指令字长,扩大寻址空间,提高编程灵活性; C.实现存储程序和程序控制; D.可以直接访问外存。,5,2、单地址指令中为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个操作数常需采用(C)指定。 A.堆栈寻址方式; B.立
3、即寻址方式; C.隐含寻址方式; D.间接寻址方式。 3、零地址运算指令在指令格式中不给出操作数地址,它的操作数来自(C)。 A.立即数和栈顶; B.暂存器; C.栈顶和次栈顶; D.累加器和暂存器。,6,4、对某个寄存器中操作数进行操作的寻址方式称为( C) 寻址。 A.直接; B.间接; C. 寄存器; D. 寄存器间接。 5、寄存器间接寻址方式中,操作数在(B) 中。 A.通用寄存器; B.主存单元; C.程序计数器; D.堆栈。 6、变址寻址方式中,操作数的有效地址等于(D)。 A.基址寄存器内容加上形式地址(位移量); B.堆栈指示器内容加上形式地址; C.程序计数器内容加上形式地址
4、; D. 变址寄存器内容加上形式地址。,7,7、堆栈寻址方式中,设A为累加器,SP为堆栈指示器,Msp为SP指示的栈顶单元,如果进栈操作的动作是:先(A) Msp,后(SP)-1 SP;那么出栈操作的动作应为(C) 。 A.先(Msp) A,后(SP)+1 SP; B.先(SP)+1 SP ,后(Msp) A ; C.先(SP)-1 SP ,后(Msp) A ; D.先(Msp) A,后(SP)-1 SP 。,8,8、程序控制类指令的功能是(D) 。 A.进行算术运算和逻辑运算; B.进行主存与CPU之间的数据传送; C.进行CPU和I/O设备之间的数据传送; D.改变程序执行的顺序。,9,9
5、、采用基址寻址可扩大寻址范围,且(B) 。 A.基址寄存器内容由用户确定,在程序执行过程中不可变; B.基址寄存器内容由操作系统确定,在程序执行过程中不可变; C.基址寄存器内容由用户确定,在程序执行过程中可变。,10,10、采用变址寻址可扩大寻址范围,且( C) 。 A.变址寄存器内容由用户确定,在程序执行过程中不可变; B.变址寄存器内容由操作系统确定,在程序执行过程中不可变; C.变址寄存器内容由用户确定,在程序执行过程中可变。,11,11、运算类指令的寻址与转移类指令的寻址不同点在于(A ) 。 A.前者取操作数,后者决定程序转移地址; B.后者取操作数,前者决定程序转移地址; C.前
6、者是短指令,后者是长指令; D.前者是长指令,后者是短指令。,12,12、指令的寻址方式有顺序和跳跃两种方式。采用跳跃寻址方式,可以实现(D)。 A.堆栈寻址; B.程序的条件转移; C.程序的无条件转移; D.程序的条件转移或无条件转移。,13,13、机器数为补码形式,则算术右移指令执行的操作是(B) 。 A.符号位填0,并顺次右移1位,最低位移至进位标志位; B.符号位不变,并顺次右移1位,最低位移至进位标志位; C.进位标志位移至符号位,顺次右移1位,最低位移至进位标志位; D.符号位填1,并顺次右移1位,最低位移至进位标志位。,14,14、设变址寄存器为X,形式地址为D,某机具有先变址
7、后间址的寻址方式,则这种寻址方式的有效地址为( C ) 。 A. EA=(X)+D; B. EA=(X)+(D); C. EA=(X)+D)。 15、设变址寄存器为X,形式地址为D,某机具有先间址后变址的寻址方式,则这种寻址方式的有效地址为( B ) 。 A. EA=(X)+D; B. EA=(X)+(D); C. EA=(X)+D)。,15,16、下面描述汇编语言特性的句子中概念上有错误的句子是(C ) 。 A. 对程序员的训练要求来说,需要硬件知识; B. 汇编语言对机器的依赖性高; C. 汇编语言的源程序通常比高级语言的源程序短小; D. 汇编语言编写的程序执行速度比高级语言快。,16,
8、17、下列说法中不正确的是(C) 。 A. 机器语言和汇编语言都是面向机器的,它们和具体机器的指令系统密切相关; B. 指令的地址字段指出的不是地址,而是操作数本身,这种寻址方式称为直接寻址; C. 硬堆栈(寄存器堆栈、串联堆栈)一般不需要堆栈指示器,但其读出是破坏性的; D. 存储器堆栈是主存的一部分,因而也可以按照地址随机进行读/写操作。,17,18、就取得操作数的速度而言,下列寻址方式中速度最快的是( B ) ,速度最慢的是( C) ,不需要访存的寻址方式是( B ) 。 A. 直接寻址;B. 立即寻址; C. 间接寻址。 19、下列说法中不正确的是(C) 。 A. 变址寻址中,有效数据
9、存放在主存中; B.存储器堆栈是先进后出的随机存储器; C.堆栈指针SP的内容表示当前堆栈内所存储的数据的个数; D.内存中指令的寻址和数据的寻址是交替进行的。,18,20、下列几项中,不符合RISC指令系统的特点是(B) 。 A. 指令长度固定,指令种类少; B.寻址方式种类尽量减少,指令功能尽可能强; C.增加寄存器的数目,以尽量减少访存次数; D.选取使用频率最高的一些简单指令,以及很有用但不复杂的指令。,19,21.指令操作所需的数据不可能来自(A) 。 A.控制存储器; B.指令本身; C.寄存器。 22、扩展操作码是(C) 。 A. 操作码字段以外的辅助操作字段的代码; B.指令格
10、式中不同字段设置的操作码; C.一种指令优化技术,即:让操作码的长度随地址数的减少而增加,不同地址数的指令可以具有不同的操作码长度。,20,23、在指令格式设计中,采用扩展操作码的目的是 ( C) 。 A.增加指令长度; B.增加寻址空间; C.增加指令数量。 24、为了缩短指令中地址码的位数,应采用(B) 寻址。 A. 立即数; B.寄存器; C.直接。,21,25、 设机器字长为16位,存储器按字节编址,对于单字长指令而言,读取该指令后,PC值自动加(B ) 。 A.1; B.2; C.4。 26*.若数据在存储器中采用以低字节地址为字地址的存放方式,则十六进制数12345678H按字节地
11、址由小到大依次存为(B) 。 A.12345678; B.78563412; C.34127856。,22,27、设机器字长为16位,存储器按字节编址,设PC当前值为1000H,当读取一条双字长指令后,PC值为(C) 。 A.1001H; B.1002H; C.1004H。 28.设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(补码表示),若CPU每从存储器取出一个字节即自动完成(PC)+1 PC,设当前PC的内容为2000H,要求转移到2008H地址,则该转移指令第二字节的内容应为(B) 。 A.08H; B.06H; C.0AH。,23,29.设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(补码表示),若CPU每从存储器取出一个字节即自动完成(PC)+1 PC,设当前PC的内容为2009H,要求转移到2000H地址,则该转移指令第二字节的内容应为( A) 。 A.F5H; B.F7H; C.09H。 30、设相对寻址的转移指令占两个字节,第一字节是操作码,第二字节是相对位移量(可正可负),则转移的地址范围是(B) 。 A.255 ; B.256 ; C.254。,