指令系统习题解答
寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答计算机科学与工程学院黄洪波2012年3月一、单项选择题1.设BX=2000H,SI=3000H,指令MOV AX,[BX+SI+8]的源操作有效地址为()。
A.5000H B.5008H C.23008H D.32008H2.设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,[BX]的源操作数的物理址为()。
A.13000H B.23000H C.33000H D.3000H3.设DS=2000H,ES=3000H,SI=200H,指令MOV ES:[SI],AL的目的操作数的物理地址为()。
A.20200H B.30200H C.50200H D.200H4.指令MOV MEM[BX],AX中的MEM是()。
A.原码B.反码C.补码D.移码5.用来作为寄存器间接寻址的寄存器有()个。
A.8 B.6 C.5 D.46.指令MOV [BX+SI],AL中的目的操作数使用()段寄存器。
A.CS B.DS C.SS D.ES7.指令MOV BX,[BP+5]中的源操作数使用()段寄存器。
A.CS B.DS C.SS D.ES8.段内间接寻址只改变()中的内容。
A.CS B.IP C.CS和IP D.PSW9.段间间接寻址只改变()中的内容。
A.CS B.IP C.CS和IP D.PSW10.下述指令中不改变PSW的指令是()。
A.MOV AX,BX B.AND AL,0FHC.SHR BX,CL D.ADD AL,BL11.下述指令中不影响CF的指令是()。
A.SHL AL,1 B.INC CXC.ADD [BX],AL D.SUB AX,BX12.两个整数补码9CH和7AH相加运算后,会产生()。
A.无溢出且无进位B.无溢出但有进位C.有溢出且有进位D.有溢出但无进位13.指令JMP WORD PTR [BX]属于()寻址。
A.段内直接B.段内间接C.段间直接D.段间间接14.指令MOV AX,[BX+SI+8]的源操作数属于()寻址。
《计算机原理学习指导》第四章指令系统综合练习题参考答案

《计算机原理学习指导》第四章指令系统综合练习题参考答案一、填空题1 、一个完善的指令系统应满足以下4个方面的要求,它们是:完备性、有效性、规整性和兼容性。
2、一条完整的指令是由操作码和地址码(操作数)两部分信息组成的。
3 、指令中的地址码字段包括源操作数的地址和操作结果数的地址(目的操作数的地址),前者用语指明操作数的存放处,后者用语存放运算的结果。
4 、指令格式按地址码部分的地址个数可以分为零地址指令格式、一地址指令格式、二地址指令格式和三地址指令格式。
5、常见的操作码方法有定长操作码和扩展操作码。
6、逻辑运算指令包括逻辑乘(与)、逻辑加(或)、逻辑非(求反)和异或(按位加)等操作。
二、单项选择题1、直接、间接、立即这 3 种寻址方式指令的执行速度有快到慢的排序是( C )A .直接、立即、间接B.直接、间接、立即C .立即、直接、间接D.立即、间接、直接2、指令系统中采用不同寻址方式的目的是(B)A .实现存储程序和程序控制B.缩短指令长度,扩大寻址空间,提高编程灵活性C .可以直接访问外存D.提高扩展操作码的可能并降低指令译码难度3、一地址指令中为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个数常采用( C )A .堆栈寻址方式B.立即寻址方式C.隐含寻址方式 D .间接寻址方式4、对某个寄存器中操作数的寻址方式称为(C)寻址方式A .直接B .间接C .寄存器直接D.寄存器间接5、寄存器间接寻址方式中,操作数在(B)A .通用寄存器 B.主存单元C.程序计数器 D .外存6、变址寻址方式中,操作数的有效地址等于( C )A .基址寄存器内容加上偏移量B.堆栈指示器内容加上偏移量C .变址寄存器内容加上偏移量D.程序计数器内容加上偏移量7、扩展操作码是(D)A .操作码字段中用来进行指令分类的代码B.指令格式中不同字段设置的操作码C.操作码字段外用来操作字段的代码D.一种指令优化技术,即让操作码的长度随地址数的变化而变化8 A 、下面关于汇编语言的叙述中,不恰当的是( D ).对程序员的训练要求来说,需要硬件知识B.汇编语言对机器的依赖性强C.用汇编语言编写程序的难度比高级语言大D.用汇编语言编写的程序执行速度比高级语言慢9 A 、能够改变程序执行顺序的是( D ).数据传送类指令B.移位操作类指令 C .输入 /输出类指令 D .条件 /无条件转移类指令10 、以下的( D )不能支持数值处理A .算术运算类指令B.移位操作类指令C.字符串处理类指令D.输入/ 输出类指令三、名词解释题1 、指令:计算机能够识别和执行的操作命令2 、指令系统:一台计算机或一个计算机系统能够执行的各种指令的集合3 、指令字:一条完整的指令称为一个指令字4 、操作码:表示操作的性质及功能5 、地址码:表示指令的操作对象,指出操作数的地址6 、指令字长:等于地址码长度加上操作码长度7、定长操作码:让操作码的长度固定且集中放在指令字的一个字段中8、扩展操作码:操作码的长度可变且分散地放在不同的字段中9、寻址方式:指确定本条指令的地址及下一条要执行的指令地址的方法10、汇编语言:一种面向机器的程序设计语言,用助记符形式表示,属于低级程序设计语言11、机器语言:一种能被机器识别和执行的语言,用二进制数“0”和“1”形式表示12、 RISC :精简指令系统计算机13: CISC :复杂指令系统计算机,指具有大量指令的计算机系统四、简答题1、计算机指令中一般包含哪些字段?分别是什么含义?答:计算机指令中一般包含地址码和操作码两部分,地址码表示指令的操作对象,指出操作数的地址,操作码表示操作的性能及功能。
习题1——指令系统 参考答案

《汇编语言》习题1——指令系统参考答案习题1-1 在8086CPU中,如果SS的内容设置为1A4BH,堆栈的长度为100H字节,问SP寄存器的初始化值为多少?SP初始指向哪个主存物理地址?答:SP寄存器的初始化值为:100HSP初始指向的主存物理地址是:1A5B0H习题1-2 分别说明下述8086指令中的源操作数和目的操作数的寻址方式。
指令目的操作数源操作数(1) MOV ES, AX 寄存器寻址寄存器寻址(2) ADD DS:[12H],AL 直接寻址寄存器寻址(3) SUB BX,1200H 寄存器寻址立即寻址(4) SHR AX,1 寄存器寻址立即寻址(5) AND -28H[BP][DI], AX 基址变址寻址寄存器寻址(6) MOV CX,LAB1[BX] 寄存器寻址基址/变址寻址(7) SBB AX, [BX] 寄存器寻址寄存器间接寻址(8) OR DX,-360H[SI] 寄存器寻址基址/变址寻址(9) ADC VAR1,CX 直接寻址寄存器寻址(10) XOR [DI],AX 寄存器间接寻址寄存器寻址习题1-3分别说明下述指令语句的语法正确与否,如果有错,说明其错误。
指令正误(1)MOV DS, 1234H 错误,立即数不能直接传送到段寄存器中(2)ADD AH,AL 正确(3)SUB CS,AX 错误,不能对CS直接操作(4)MOV BX,[BX][SI] 正确(5)ADC VAR1,[BP][DI] 错误,两个操作数不能同时都在存储器中(6) SBB [BX][BP],AX 错误, 基址变址寻址方式中不能两个寄存器都是基址寄存器(7)PUSH 5678H 错误,立即数不能作为源操作数直接压入堆栈(8)SHL [BP][SI],CL 错误,目的操作数没有明确指明是字还是字节(9)ROR AX,2 错误,移位次数大于1时,需将其提前存入CL中(10)NEG AX,BX 错误,操作数个数错误(11)LEA CS,AX 错误,目的操作数只能是16位通用寄存器(12)MOV AL,BX 错误, 操作数位数不一致(13)ADD DS:200H,AX 正确(14)AND [BX][BP],AH 错误, 基址变址寻址方式中不能两个寄存器都是基址寄存器(15)OR BH,-16H[BP] 正确(16)CLC AX 错误,操作数个数错误(17)MUL AX,BX 错误,操作数个数错误(18)DIV 12H 错误,源操作数不能是立即数习题1-4 在8086中,如果(DS)=1A26H,(SS)=20B0H,(BX)=1200H,(SI)=0034H, (BP)=5700H(1B484H)=1234H,(26200H)=5678H,给出下面各指令或指令组执行后相应寄存器/存储单元的结果。
计算机组成原理,指令系统,练习题

单项选择题1 在CPU执行指令的过程中,指令的地址由___B__给出。
A 程序计数器PCB 指令的地址码字段C 操作系统D 程序员2 下列关于指令的功能及分类叙述正确的是__B___。
A 算术与逻辑运算指令,通常完成算术运算或逻辑运算,都需要两个数据B 移位操作指令,通常用于把指定的两个操作数左移或右移一位C 转移指令,子程序调用与返回指令,用于解决数据调用次序的需要D 特权指令,通常仅用于系统软件,这类指令一般不提供给用户3 零地址的运算类指令在指令格式中不给出操作数的地址,参加的两个操作数来自__C__。
A累加器和寄存器 B 累加器和暂存器C 堆栈的栈顶和次栈顶单元D 堆栈的栈顶单元和暂存器4 下列一地址运算类指令的叙述中,正确的是_____。
A 仅有一个操作数,其地址由指令的地址码提供B 可能有一个操作数,也可能有两个操作数C 一定有两个操作数,其中一个操作数是隐含的D 指令的地址码字段存放的一定是操作码5 关于二地址指令一下论述正确的是_____。
A 二地址指令中,运算结果通常存放在其中一个地址码所提供的地址中B二地址指令中,指令的地址码字段存放的一定是操作数C二地址指令中,指令的地址码字段存放的一定是寄存器号D二地址指令中,指令的地址码字段存放的一定是操作数地址6 单字长四地址指令OP A1、A2、A3、A4的功能为(A1)OP(A2)→A3,且A4给出下一条指令地址,假设A1、A2、A3、A4都为主存储器地址,则完成上述指令需访存_____。
A 1B 2C 3D 47 在指令格式设计中,采用扩展操作码的目的是_____。
A 增加指令长度B 增加地址码数量NNC 增加指令数量D 增加寻址空间8 某机器的指令字长为16位,有8个通用寄存器,有8种寻址方式,单操作数指令最多有_____个,双操作数指令最多有_____个。
A 1024 16B 2048 32C 256 64D 1024 329 指令寻址方式有顺序和跳跃两种,采用跳跃寻址方式可以实现_____。
0104指令系统的优化例题

①用此思想可对操作码进行优化。 ②对地址码的优化:
6.设计RISC机器的一般原则及 可采用的基本技术有那些?
答:一般原则: (1)确定指令系统时,只选择使用频度很高的指令及
少量有效支持操作系统,高级语言及其它功能的 指令. (2)减少寻址方式种类,一般不超过两种; (3)让所有指令在一个机器周期内完成; (4)扩大通用寄存器个数,一般不少于32个,尽量减 少访存次数; (5)大多数指令用硬联实现,少数用微程序实现; (6)优化编译程序,简单有效地支持高级语言实现。
(4)用流水和延迟转移实现指令,即可让本条指令执 行与下条指令预取在时间上重叠。另外,将转移 指令与其前面的一条指令对换位置,让成功转移 总是在紧跟的指令执行之后发生,使预取指令不 作废,节省一个机器周期。
(5)优化设计编译系统。即尽力优化寄存器分配,减 少访存次数。不仅要利用常规手段优化编译: 还 可调整指令执行顺序,以尽量减少机器周期等。
答:指令格式的优化指如何用最短位数表示 指令的操作信息和地址信息,像程序中指 令的平均字长最短。
Huffman压缩的基本思想是,当各种事件发 生概率不均等时,采用优化技术对发生概 率最高的事件用最短的位数(时间)来表示 (处理),而对出现概率较低的事件,允许采 用较长位数(时间)来表示(处理),会导致表 示(处理)的平均位数(时间)的缩短。
(4)由于指令系统庞大,指令的使用频度不高,降 低系统性能价
格比,增加设计人员负担。
RISC的问题:(1)由于指令少,在原CISC上一条
由于RISC和C1SC各有优缺点:(1)在设计 时,应向着两者结合,取长补短方表示数据信息, 其存储空间利用率低,运算速度要快。( ×)
1.4 指令系统的优化 习题课
关于习题二答案单片机的指令系统

习题二答案单片机的指令系统一、选择题1、执行下列3条指令后,30H单元的内容是( C )。
MOV R0,#30HMOV 40H,#0EHMOV @R0,40HA)40H B)30H C)0EH D)FFH2、在堆栈中压入一个数据时(B)。
A)先压栈,再令SP+1 B)先令SP+1,再压栈C)先压栈,再令SP-l D)先令SP-1,再压栈3、在堆栈操作中,当进栈数据全部弹出后,这时的SP应指向 A 。
A)栈底单元B)7FHC)栈底单元地址加1 D)栈底单元地址减l4、指令MOVC A,@A+PC源操作数的寻址方式是 D 。
A)寄存器寻址方式B)寄存器间接寻址方式C)直接寻址方式D)变址寻址方式5、ANL 20H,#30H指令中,源操作数的寻址方式是 A 。
A)立即寻址方式B)直接寻址方式C)位寻址方式D)相对寻址方式6、ANL C,/30H指令中,源操作数的寻址方式是 C 。
A)立即寻址方式 B)直接寻址方式C)位寻址方式 D)相对寻址方式7、Jz rel指令中,操作数rel的寻址方式是 D 。
A)立即寻址方式 B)直接寻址方式C)位寻址方式 D)相对寻址方式8、Jz rel指令中,是判断 A 中的内容是否为0。
A) A B) B C)C D)PC9、MOVX A,@DPTR指令中源操作数的寻址方式是(B)A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址10、下面条指令将MCS-51的工作寄存器置成3区(B)A)MOV PSW,#13H (B)MOV PSW,#18H11、MOV C,00H指令中源操作数的寻址方式是(A)A)位寻址 B)直接寻址 C)立即寻址 D)寄存器寻址二、填空题1、8051单片机共有7 种寻址方式。
访问外部数据存储器应采用寄存器间接寻址方式。
2、访问外部数据存储器应采用寄存器间接寻址方式;查表应使用变址寻址方式。
3、在8051单片机中,堆栈操作的指令有PUSH 和 POP两个。
楼第4章指令系统习题解答

楼第4章指令系统习题解答习题解答:1.什么是寻址模式?8086/8088 CPU的寻址模式是什么?答:指令的寻址方式就是指获得操作数所在地址的方法。
8086/8088cpu指令的寻址方式可分为8种,为立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、基址变址相对寻址、隐含寻址。
2.指示源操作数和目标操作数在以下指令中的寻址方式(1)movax,[si]源操作数:寄存器寻址目的操作数:寄存器间接寻址(2)movdi,100源操作数:寄存器寻址目的操作数:立即寻址(3)mov[bx],al源操作数:寄存器间接寻址目的操作数:寄存器寻址(4)mov[bx+si],cx源操作数:基址变址寻址目的操作数:寄存器寻址(5)adddx,106h[si]源操作数:寄存器寻址目的操作数:寄存器相对寻址3.阅读以下说明(1)sti对(2)call1000h错(3)divax,dl错(4)shlal,4错(5)popax对(6)inal,[30h]错(7)inccs错(8)out40h,al对4.地址是根据已知的物理条件计算的。
已知:SS=1000h,ES=2000h,DS=3000h,CS=4000H,BX=5000h,di=1200h,BP=2300h(1)(2)(3)(4)(5)5.将SP的初始值设置为2400h,ax=4000H,BX=3600h,然后在执行pushax指令后,SP=?,执行pushbx和popax后,SP=?答:则执行指令pushax后,sp=2400h-2=23feh,再执行pushbx和popaxMovax,[2300h]计算公式:DS×16+2300hmov[BX][di],ax计算公式:DS×16+BX+diaddax,es:[2100h]计算公式:es×16+2100hsubdx,[BP+6]计算公式:SS×16+BP+6movax,[di]计算公式:DS×16+di后sp=23feh。
第4章指令系统层习题参考解答-汇编语言与计算机组成原理 答案

1.什么是“程序可见”的寄存器?程序可见寄存器是指在用户程序中用到的寄存器,它们由指令来指定。
2. 80x86微处理器的基本结构寄存器组包括那些寄存器?各有何用途?基本结构寄存器组按用途分为通用寄存器、专用寄存器和段寄存器3类。
通用寄存器存放操作数或用作地址指针;专用寄存器有EIP和EFLAGS,分别存放将要执行的下一条指令的偏移地址和条件码标志、控制标志和系统标志;段寄存器存放段基址或段选择子。
3.80x86微处理器标志寄存器中各标志位有什么意义?常用的7位:CF进位标志: 在进行算术运算时,如最高位(对字操作是第15位,对字节操作是第7位)产生进位或借位时,则CF置1;否则置0。
在移位类指令中,CF用来存放移出的代码(0或1)。
PF奇偶标志: 为机器中传送信息时可能产生的代码出错情况提供检验条件。
当操作结果的最低位字节中1的个数为偶数时置1,否则置0。
AF辅助进位标志: 在进行算术运算时,如低字节中低4位(第3位向第4位)产生进位或借位时,则AF置1;否则AF置0。
ZF零标志:如指令执行结果各位全为0时,则ZF置1;否则ZF置0。
SF符号标志:其值等于运算结果的最高位。
如果把指令执行结果看作带符号数,就是结果为负,SF置1;结果为正,SF置0。
OF溢出标志: 将参加算术运算的数看作带符号数,如运算结果超出补码表示数的范围N,即溢出时,则OF置1;否则OF置0。
DF方向标志: 用于串处理指令中控制处理信息的方向。
当DF位为1时,每次操作后使变址寄存器SI和DI减小;当DF位为0时,则使SI和DI增大,使串处理从低地址向高地址方向处理。
4.画出示意图,简述实模式下存储器寻址的过程。
20位物理地址如下计算(CPU中自动完成):10H×段基址+偏移地址=物理地址5. 画出示意图,简述保护模式下(无分页机制)存储器寻址的过程。
采用对用户程序透明的机制由选择子从描述子表中选择相应的描述子,得到欲访问段的段基址、段限等有关信息,再根据偏移地址访问目标存储单元。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
指令系统习题解答一、选择题1、变址寻址方式中,操作数的有效地址等于______。
〔C〕A 基值寄存器内容加上形式地址〔位移量〕B 堆栈指示器内容加上形式地址〔位移量〕C 变址寄存器内容加上形式地址〔位移量〕D 程序记数器内容加上形式地址〔位移量〕2、用某个寄存器中操作数的寻址方式称为______寻址。
〔C〕A 直接B 间接C 寄存器直接D 寄存器间接3、单地址指令中为了完成两个数的算术运算,除地址码指明的一个操作数外,另一个常需采用______。
〔C〕A 堆栈寻址方式B 立即寻址方式C 隐含寻址方式D 间接寻址方式4、寄存器间接寻址方式中,操作数处在______。
〔B〕A. 通用寄存器B. 主存单元C. 程序计数器D. 堆栈5、程序控制类指令的功能是______。
〔D〕A 进行算术运算和逻辑运算B 进行主存与CPU之间的数据传送C 进行CPU和I / O设备之间的数据传送D 改变程序执行顺序6、堆栈寻址方式中,设A为通用寄存器,SP为堆栈指示器,M SP为SP指示器的栈顶单元,如果操作的动作是:〔A〕→M SP,〔SP〕- 1 →SP ,那么出栈的动作应是______。
〔B〕A 〔M SP〕→A,〔SP〕 + 1→SP ;B 〔SP〕 + 1→SP ,〔M SP〕→A ;C 〔SP〕 - 1→SP ,〔M SP〕→A ;D 〔M SP〕→A ,〔SP〕 - 1→SP ;7.指令周期是指______。
〔C〕A CPU从主存取出一条指令的时间;B CPU执行一条指令的时间;C CPU从主存取出一条指令加上CPU执行这条指令的时间;D 时钟周期时间;8、指令系统采用不同寻址方式的目的是______。
〔B〕A 实现存贮程序和程序控制;B 缩短指令长度,扩大寻址空间,提高编程灵活性;C 可直接访问外存;D 提供扩展操作码的可能并降低指令译码的难度9、指令的寻址方式有顺序和跳跃两种方式,采用跳跃寻址方式,可以实现______。
〔D〕A 堆栈寻址B 程序的条件转移C 程序的无条件转移D 程序的条件转移或无条件转移10、算术右移指令执行的操作是______。
〔B〕A 符号位填0,并顺次右移1位,最低位移至进位标志位;B 符号位不变,并顺次右移1位,最低位移至进位标志位;C 进位标志位移至符号位,顺次右移1位,最低位移至进位标志位;D 符号位填1,并顺次右移1位,最低位移至进位标志位11、二地址指令中,操作数的物理位置可安排在______。
〔B〕A 栈顶和次栈顶B 两个主存单元C 一个主存单元和一个寄存器D 两个寄存器13、位操作类指令的功能是______。
〔C〕A.对CPU内部通用寄存器或主存某一单元任一位进行状态检测〔0或1〕B.对CPU内部通用寄存器或主存某一单元任一位进行状态强置〔0或1〕C.对CPU内部通用寄存器或主存某一单元任一位进行状态检测或强置D.进行移位操作14、以下四种类型指令中,执行时间最长的是______。
〔C〕A.RR型指令B.RS型指令C.SS型指令D.程序控制指令二、填空题1、寻址方式按操作数的A.______位置不同,多使用B.______和C.______型,前者比后者执行速度快。
〔A.物理 B.RR C.RS〕2、一个较完善的指令系统应包含A. ______类指令,B. ______类指令,C. ______类指令,程序控制类指令,I/O类指令,字符串类指令,系统控制类指令。
〔A.数据传送 B.算术运算 C.逻辑运算〕3、形式指令地址的方式,称为A.______方式,有B. ______寻址和C. ______寻址。
〔A.指令寻址 B.顺序 C.跳跃〕4、指令系统是表征一台电脑性能的重要因素,它的A. ______和B. ______不仅影响到机器的硬件结构,而且也影响到C. ______。
〔A.格式 B. 功能 C. 系统软件〕5、RISC指令系统的最大特点是:A. ______少;B. ______固定;C. ______种类少。
只有取数/ 存数指令访问存储器。
〔A.指令条数 B.指令长度 C.指令格式和寻址方式〕6、指令操作码字段表征指令的A.______,而地址码字段指示B.______。
微小型机多采用C.______混合方式的指令格式。
〔A.操作特征与功能B.操作数的地址C二地址、单地址、零地址〕7、指令格式中,地址码字段是通过 A.______来表达的,因为通过某种方式的变换,可以给出B.______地址。
常用的指令格式有零地址指令、单地址指令、C.______三种.〔A.寻址方式 B.操作数有效 C.二地址指令〕8、堆栈是一种特殊的A.______寻址方式,它采用B.______原理.按结构不同,分为C.______和存储器堆栈.〔A.数据 B.先进后出 C.寄存器〕9、设D为指令中的形式地址,I为基址寄存器,PC为程序计数器。
假设有效地址E = 〔PC〕+ D,则为A.______寻址方式;假设E = 〔I〕+ D ,则为B.______;假设为相对间接寻址方式,则有效地址为C.______〔A.相对 B.基值 C.E = 〔〔PC〕+ D 〕〕10、条件转移指令、无条件转移指令、转子指令、返主指令、中断返回指令等都是A______指令。
这类指令在指令格式中所表示的地址,表示要转移的是B______而不是C______〔A程序控制B.下一条指令的地址C.操作数的地址〕11、指令格式是指令用A______表示的结构形式,通常由B______字段和C______字段组成。
〔A.二进制代码B.操作码C.地址码〕三、应用题1、〔11分〕指令格式如下所示,OP为操作码字段,试分析指令格式特点。
解:〔1〕操作码字段为6位,可指定26 = 64种操作,即64条指令。
〔2〕单字长〔32〕二地址指令。
〔3〕一个操作数在原寄存器〔共16个〕,另一个操作数在存储器中〔由变址寄存器内容 + 偏移量决定〕,所以是RS 型指令。
〔4〕这种指令结构用于访问存储器。
2、〔11分〕某电脑字长16位,主存容量为64K 字,采用单字长单地址指令,共有64条指令,试采用四种寻址方式〔立即、直接、基值、相对〕设计指令格式。
解:64条指令需占用操作码字段〔OP 〕6位,这样指令余下长度为10位。
为了覆盖主存64K字的地址空间,设寻址模式〔X 〕2位,形式地址〔D 〕8位,其指令格式如下:X= 0 0 直接寻址 有效地址 E=D 〔256单元〕X= 0 1 间接寻址 有效地址 E= (D 〕〔64K 〕X= 1 0 变址寻址 有效地址 E= (R)+D 〔64K 〕X= 1 1 相对寻址 有效地址 E=〔PC 〕+D 〔64K 〕其中R 为变址寄存器〔16位〕,PC 为程序计数器〔16位〕,在变址和相对寻址时,位移量D 可正可负。
3、〔11分〕假设机器字长16位,主存容量为128K 字节,指令字长度为16位或32位,共有128条指令,设计电脑指令格式,要求有直接、立即数、相对、基值、间接、变址六种寻址方式。
解:由已知条件,机器字长16位,主存容量128KB / 2 = 64KB 字,因此MAR = 18位,共128条指令,故OP 字段占7位。
采用单字长和双字长两种指令格式,其中单字长指令用于算术逻辑和I/ O 类指令,双字长用于访问主存的指令。
15 9 8 6 53 2 0寻址方式由寻址模式X 定义如下:X = 000 直接寻址 E = D 〔64K 〕X = 001 立即数 D = 操作数X = 010 相对寻址 E = PC + D PC = 16位X = 011 基值寻址 E = R b + D ,R b =16 位X = 100 间接寻址 E = 〔D 〕X = 101 变址寻址 E = R X + D ,R X = 10位4、〔11分〕指令格式如下所示,其中OP 为操作码,试分析指令格式特点。
18 12 10 9 5 4 0解:(1) 单字长二地址指令。
(2) 操作码字段OP 可以指定27=128条指令。
(3) 源寄存器和目标寄存器都是通用寄存器〔可分别指定32个〕,所以是RR 型指令,两个操作数均存在寄存器中。
(4) 这种指令结构常用于算术逻辑类指令。
5、〔11分〕指令格式如下所示,OP为操作码字段,试分析指令格式的特点。
15 10 7 4 3 0解:〔1〕双字长二地址指令,用于访问存储器。
〔2〕操作码字段OP为6位,可以指定26 = 64种操作。
〔3〕一个操作数在源寄存器〔共16个〕,另一个操作数在存储器中〔由基值寄存器和位移量决定〕,所以是RS型指令。
6、〔11分〕指令格式结构如下所示,试分析指令格式及寻址方式特点。
解:指令格式及寻址方式特点如下:(1)二地址指令。
(2)操作码OP可指定26=64条指令。
(3)源和目标都是通用寄存器〔可分别指定32个寄存器〕,所以是RR型指令,两个操作数均在寄存器中〔4〕这种指令格式常用于算术逻辑类指令7、〔11分〕某16机机器所使用的指令格式和寻址方式如下所示,该机有20位基值寄存器,16个16位通用寄存器。
指令汇编格式中的S〔源〕,D〔目标〕都是通用寄存器,M是主存中的一个单元。
三种指令的操作码分别是MOV〔OP〕=〔A〕H,STA〔OP〕=〔1B〕H,LDA〔OP〕=〔3C〕H。
MOV是传送指令,STA为写数指令,LDA为读数指令如图B20.1图20。
1要求:〔1〔2〕CPU完成哪一种操作所花的时间最短?哪一种操作所花时间最长?第二种指令的执行时间有时会等于第三种指令的执行时间吗?〔3〕以下情况下每个十六进制指令字分别代表什么操作?其中如果有编码不正确,如何改正才能成为合法指令?○1〔F0F1〕H〔3CD2〕H○2〔2856〕H○3〔6DC6〕H○4〔1C2〕H解:〔1〕第一种指令是单字长二地址指令,RR型;第二种指令是双字长二地址指令,RS型,其中S采用基址寻址或变址寻址,R由源寄存器决定;第三种也是双字长二地址指令,RS型,R由目标寄存器决定,S由20位地址〔直接寻址〕决定。
〔2〕处理机完成第一种指令所花的时间最短,因为RR型指令,不需要访问存储器。
第二种指令所花的时间最长,因为RS型指令,需要访问存储器。
同时要进行寻址方式的变换运算〔基址或变址〕,这也需要时间。
第二指令的执行时间不会等于第三种指令,因为第三种指令虽然也访问存储器,但节省了求有效地址运算的时间开销。
〔3〕根据以知条件:MOV〔OP〕=00010101,STA〔OP〕=011011,LDA〔OP〕=111100,将指令的十六进制格式转换为二进制代码且比较后可知:○1〔F0F1〕H〔3CD2〕H指令代表LDA指令,编码正确,其含义是把主存〔13CD2〕H地址单元的内容取至15号寄存器。