第2章(3)1指令系统采用不同寻址方式的目的是()。A.实现存贮程序和程序控制;B.缩短指令长度,扩大寻址空间,提高编程灵活性;C.可直接访问外存;D.提供扩展操作码的可能并降低指令译码的难度;2用某个寄存器作为操作数的寻址方式称为()寻址。A直接B间接C寄存器直接D寄存器间接3在CPU中跟踪指令后继地址的寄存器是()。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就取得操作数的速度而言,下列寻址方式中速度最快的是()。A直接寻址B立即数寻址C寄存器间址寻址D间址寻址9可以在计算机中直接执行的语言是()A自然语言B高级语言C机器语言D汇编语言10用二进制代码表示的计算机语言,称为()A机器语言B汇编语言C高级语言D自然语言11用助记符编写的语言是()A机器语言B汇编语言C高级语言D自然语言12一条指令中包含的信息有()A操作码、控制码B操作码、地址码C操作码、向量地址D控制码、地址码13设RA、RB表示寄存器,则按操作数的个数分,指令ADDRA,RB属于()A单操作数指令B双操作数指令C多操作数指令D无操作数指令14下述关于零地址指令的说法正确的是()A零地址指令是不需要操作数的指令B零地址指令需要有操作数,其操作数通过隐含寻址得到C有的零地址指令不需要操作数,有的零地址指令需要并使用隐含寻址得到操作数D以上说法都不正确15下列关于二地址运算指令的说法正确的是()A指令的地址码字段存放的一定是操作数B指令的地址码字段存放的一定是操作数地址C指令的结果一定存放到累加器中D运算结果通常放在其中一个地址码提供的存储单元中16某机采用16位单字长指令,采用定长操作码,地址码为5位,现已定义60条二地址指令,那么单地址指令最多有()条A4B32C128D25617某机器采用16位单字长指令,采用扩展操作码技术,地址码为5位,现已定义60条二地址指令,那么单地址指令最多有()条A4B32C128D25618当操作数采用立即数寻址时,指令的地址码字段给出的是()A形式地址B有效地址C操作数本身D真实地址19计算机内存一般分为静态数据区、代码区、栈区和堆区,若某指令的操作数采用立即数寻址,则该操作数位于()A.静态数据区B.代码区C.栈区D.堆区20计算机指令一般包括操作码和地址码两部分,为分析执行一条指令,其()A.操作码应存入指令寄存器(IR),地址码应存入程序寄存器(PC)B.操作码应存入程序计数器(PC),地址码应存入指令寄存器(IR)C.操作码和地址码都应存入指令寄存器D.操作码和地址码都应存入程序计数器二计算理解题1简述RISC与CISC指令系统的区别。2设某机的指令长度为16位,需要15条三地址指令,15条二地址指令,15条一地址指令和16条零地址指令,如何设计代码结构?(一个地址占4bit代码空间,每条指令16bit)3某指令系统如下:为了在计算机中有效识别各种指令,操作码需采用扩展码编码,给出操作码编码方案使得3地址码、2地址码、1地址码和0地址码的指令条数均大于11条。4(专升本、信管不要求)用TEC-5的指令系统实现y=a+x-b,TEC-5系统初始状态:R2=02h,R1=01h,各变量在内存中的情况如下内存地址内容01ha02hx03hb04hyTEC-5主要指令如下助记符功能ADDRd,RsRd+Rs-RdSUBRd,RsRd-Rs-RdANDRd,RsRd&Rs-RdSTARd,[Rs]Rd-[Rs]LDARd,[Rs][Rs]-RdJCR3若C=1则R3-PC答案1.B2.C3B4C5D6C7B8B9C10A11B12B13B14C15D16A二地址码占用位数:5位×2=10位,操作码有6位,最多有2^6=64条指令,又由于操作码位数固定,固最多有64-60=4条指令17C若按6位操作码,有多出的指令64-60=4,将多出的4条指令的6位操作码作为扩展码,另外5位地址码作为单地址指令的操作码,则共有4×2^5=4×32=12818C19B,立即数的数据对象直接在代码中可获得,故在代码区20C二、计算理解题1简述RISC与CISC指令系统的区别。比较内容CISCRISC指令系统复杂、庞大简单、精简指令数目一般大于200一般小于100指令格式一般大于4一般小于4寻址方式一般大于4一般小于4指令字长不固定等长可访存指令不加限制只有取数/存数指令各种指令使用频率相差很大相差不大各种指令执行时间相差很大绝大多数在一个周期内完成优化编译实现很难较容易程序源代码长度较短较长控制器实现方式绝大多数为微程序控制绝大多数为硬布线控制软件系统开发时间较短较长不要求写全,1、2、4、5、6、7、8相对重要一点2设某机的指令长度为16位,需要15条三地址指令,15条二地址指令,15条一地址指令和16条零地址指令,如何设计代码结构?(一个地址占4bit代码空间,每条指令16bit)3地址指令(15条)OP地址1地址2地址300000001:1110A1A1:A1A2A2:A2A3A3:A32地址指令(15条)OPOP地址2地址311111111:111100000001:1110A2A2:A2A3A3:A31地址指令(15条)OPOPOP地址311111111:111111111111:111100000001:1110A3A3:A30地址指令(16条)OPOPOPOP11111111111111111111111100000001:1111:1111:1111:11113某指令系统如下:为了在计算机中有效识别各种指令,操作码需采用扩展码编码,给出操作码编码方案使得3地址码、2地址码、1地址码和0地址码的指令条数均大于11条。1)二地址码操作码:0000~1011(12条)2)三地址码操作码:110000~111011(12条)3)0地址码:11110000~11111011(12条)4)一地址码:1111110000~1111111111(16条)4用TEC-5的指令系统实现y=a+x-b,TEC-5系统初始状态:R2=01h,R3=02h,各变量在内存中的情况如下内存地址内容01ha02hx03hb04hyTEC-5主要指令如下助记符功能ADDRd,RsRd+Rs-RdSUBRd,RsRd-Rs-RdANDRd,RsRd&Rs-RdSTARd,[Rs]Rd-[Rs]LDARd,[Rs][Rs]-RdJCRs若C=1则Rs-PC指令实现如下:LDAR0,[R2]LDAR1,[R3]ADDR0,R1ADDR3,R2LDAR1,[R3]SUBR0,R1ADDR3,R2STAR0,[R3]