第5章 指令系统习题

合集下载

第5章指令系统习题

第5章指令系统习题

解:在三地址指令中三个地址字段占3×3 = 9位。 剩下12-9=3位作为操作码,四条指令的操作码分 别为000、001、010、011。 在单地址指令中,操作码可以扩展到12-3=9 位,其中前3位的代码是上述四个操作码以外的4 个编码,即首位为1。编码范围是1xxxxxxxx。共 有28=256个编码,取其前254个,100000000~ 111111101。剩下2个作为扩展用。 对于零地址指令,全部12位指令代码都是操 作码,其中前9位剩下2个编码与后3位的8个编码 正好构成16个操作码。
指令字长为16位,每个地址码为6位,设计 14条二地址指令,100条一地址指令,100 条零地址指令.
0000 1101 1110 1111 1111 1111
ห้องสมุดไป่ตู้
****** ****** ****** ******(14条二指令) 000000 ****** 100011 ******(100条一地址指令) 100100 000000 100101 100011(100条零地址指令)
某微机的指令格式如下: 15…..10 9..8 7…..0
操作码 X D
其中D为偏移量,X为寻址特征,具体定义如下: X=00 直接寻址 X=01 用变址寄存器X1变址寻址 X=10用变址寄存器X2变址寻址 X=11相对寻址 (PC)=1234H,(X1)=0037H,(X2)=1122h,指出下 列指令的有效地址. A)4420H B)2244H C)1322H D)3521H E)6723H
在计算机系统中, 地址为20H的单元中存放内容为30H; 地址为30H的单元中存放内容为40H; 地址为40H的单元中存放内容为50H; 地址为50H的单元中存放内容为60H; 下列操作后,AX存放内容是什么? Mov ax,20H MOV AX,(20H); MOV AX,((20h)); MOV AX,30H; MOV AX,(30H); MOV AX,((30H))

第五章 指令系统习题

第五章 指令系统习题

第五章指令系统一、选择题1、采用直接寻址,操作数在中。

A、主存B、寄存器C、硬盘D、光盘2、为了缩短指令中某个地址段的位数,有效的方法是采取。

A、立即寻址B、变址寻址C、间接寻址D、寄存器寻址3、指令系统采用不同寻址方式的目的是。

A、实现存储程序和程序控制B、缩短指令长度,扩大寻址空间,提高编程灵活性C、可以直接访问外存D、提供扩展操作码的可能,并降低指令译码难度4、假设寄存器R中的数值为200,主存地址为200和300的地址单元中存放的内容分别是300和400,则方式下访问到的操作数为200。

A、直接寻址200B、寄存器间接寻址(R)C、存储器间接寻址(200)D、寄存器寻址R5、输入输出指令的功能是。

A、进行算术运算和逻辑运算B、进行主存和CPU之间的数据传送C、进行I/O设备和CPU之间的数据传送D、改变程序执行的顺序6、下列关于RISC的描述中,不正确的是。

A、只选用简单的,使用频率高的指令,所以采用RISC的CPU的性能较差,不能运行复杂的指令B、指令长度固定,指令格式和寻址方式少C、采用硬布线逻辑,提高指令执行的速度D、采用指令流水线技术,大部分指令都能在一个机器周期中完成。

7、间接寻址是指。

A、指令中直接给出操作数地址B、指令中直接给出操作数C、指令中间接给出操作数D、指令中间接给出操作数的地址8、基址寻址方式中,操作数的有效地址等于。

A、基址寄存器的内容加上形式地址(偏移量)B、变址寄存器的内容加上形式地址(偏移量)C、程序计数器的内容加上形式地址(偏移量)D、堆栈寄存器的内容加上形式地址(偏移量)8.通常指令编码的第一个字段是__ __A.操作B.指令C.操作码D.控制码9.堆栈常用于 _A.程序转移B.输入输出C.数据移位D.保护程序现场10.在堆栈中保持不变的是_ _A.栈指针B.栈底C.栈顶D.栈中数据11.设寄存器R=1000,地址1000处的值为2000,2000处为3000,PC的值为4000,用相对寻址方式,-2000(PC)的操作数是__ __A.4000 B.3000C.5000 D.700012.直接转移指令的功能是将指令中的地址代码送入__ __A.PC B.累加器C.存储器 D.地址寄存器13.以下的 D 不能支持数值处理。

第5章 习题参考答案

第5章 习题参考答案

第五章习题参考答案一、填空题1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。

2、外中断请求标志位是 IE0 和 IE1 。

3、 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后,CPU不能马上响应中断。

4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。

二、选择题:1、在中断服务程序中,至少应有一条( D )。

A、传送指令B、转移指令C、加法指令D、中断返回指令2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。

A、 98HB、 84HC、 42HD、 22H3、MCS-51响应中断时,下列哪种操作不会发生( A )A、保护现场B、保护PCC、找到中断入口D、保护PC转入中断入口4、MCS-51中断源有( A )A、 5个B、 2个C、 3个D、6个5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )A、由CPU自动完成B、在中断响应中完成C、应由中断服务程序完成D、在主程序中完成6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。

A、 INT0,INT1B、 T0,T1C、 T1,串行接口D、 INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。

A、 INT1B、 INT0C、 T1D、T08、当CPU响应串行接口中断时,程序应转到( C )。

A、 0003HB、 0013HC、 0023HD、 0033H9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。

A、 1个B、 2个C、 3个D、0个10、外部中断1固定对应的中断入口地址为( C )。

指令系统习题解答

指令系统习题解答

指令系统习题解答一、选择题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、指令的寻址方式有顺序和跳跃两种方式,采用跳跃寻址方式,可以实现______。

第5章 8086的指令系统

第5章   8086的指令系统

图5.4
例5.16的执行情况
寄存器相对寻址可用于表格处理或访问一维数组中的元
素。把表格的首地址设置为位移量,利用修改间接寄存器的值
来存取表格中的任意一个元素。 表5.2列举了一些寄存器相对寻址方式所用的示例。
表5.2 寄存器相对寻址示例
指 令 二进制 位数 功 能 说 明 将 ES 附加段有效地址为 DI 加上 64H 中字的内容送入 AX 寄存器中 将数据段有效地址为 SI 加上偏移量中字节的内容送入 CL 寄存器中 将数据段有效地址为 EAX 加上 0AH 中字的内容送入 DI 寄存器中 将数据段有效地址为 EBX 加上偏移量中双字的内容送入 EAX 寄存器中
图5.2
例5.5的执行情况
【例5.8 】 MOV AX, 系统默认为 数据段)
这种寻址方法是以数据段的地址为基础,可在多达64KB 的范围内寻找操作数。 ② 8086中允许段超越(除默认的数据段DS以外),即允许 操作数在以代码段、堆栈段或附加段为基准的区域中。
寄存器寻址使用的寄存器类型要匹配,8位和16位,16
位和32位及8位和32位寄存器是决不能混用的。有些指令可 除外,如:SHL AX,CL。详细在后面讲。
除上述两种寻址方式外,以下各种寻址方式的操作数 均在代码段以外的存储区中,寻址方式通过不同的途径求 得操作数的偏移地址,即有效地址EA ( Effective Address)。 3.直接寻址(Direct Addressing)
第5章
INTEL 8080/8088 指令系统
5.1 概述
5.2 8086/8088的寻址方式
5.3 指令格式 5.4 8086 /8088指令系统 习题与思考题
5.1 概
述(p70)

第5章习题答案

第5章习题答案
3. 假定某计算机中有一条转移指令,采用相对寻址方式,共占两个字节,第一字节是操作码, 第二字节是相对位移量(用补码表示),CPU 每次从内存只能取一个字节。假设执行到某转 移指令时 PC 的内容为 200,执行该转移指令后要求转移到 100 开始的一段程序执行,则该 转移指令第二字节的内容应该是多少? 参考答案: 100=200+2+Offset,Offset=100-202=-102=10011010B (注:没有说定长指令字,所以不一定是每条指令占 2 个字节。)
间接寻址(Indirect Addressing)
寄存器寻址(Register Addressing)
寄存器间接(Register indirect Addressing) 偏移寻址(Displacement Addressing)
变址寻址(Indexing)
变址寄存器(index register)
000
RS 型 OP (6 位) 01 R t (3 位) 10 Rs (3 位) RX 型 OP (6 位) 01 R t (3 位) 11 Rx (3 位)
Offset16 (16 位)
XI 型 OP (6 位) 11 Rx (3 位) Offset16 (16 位) 00 Imm16 (16 位)
可执行程序文件(Executable program file)
链接程序(Linker / Link editor)
装入程序(Loader)
全局指针(Global pointer )
伪指令(pseudo-instruction)
CISC(Complex Instruction Set Computer) RISC(Reduced Instruction Set Computer)

PLC编程与应用第2版习题答案第5章 指令系统

PLC编程与应用第2版习题答案第5章 指令系统

第五章指令系统
1、S7-1200提供了哪些类型的定时器?
2、编写程序来记录一台设备的运行时间,其设计要求为:当输入I0.0为高电平,设备运行,当I0.0为低电平时,设备不工作。

3、编写程序实现以下控制功能:第一次扫描时将VB0清零,用定时中断0,每100ms将VB0加1,VB0=100时关闭定时中断,并将Q0.0立即置1,设计主程序和中断程序。

4、设计一个8位彩灯控制程序,要求彩灯的移动速度和移动方向可调。

6、将8个16位二进制数存放在VW10开始的存储区内,在I0.3的上升沿,用循环指令求它们的平均值,并将结果存放在VW0中。

7、设计一个圆周长的计算程序,将半径存放在VW10中,取圆周率为3.1416,用浮点数运算指令计算圆周长,运算结果四舍五入后,转换为整数,存放在VW20中。

8、S7-1200包括哪些中断指令?。

第5章-习题参考答案

第5章-习题参考答案

第五章习题参考答案一、填空题1、MCS-51有5个中断源,2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。

2、外中断请求标志位是 IE0 和 IE1 。

3、 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后,CPU不能马上响应中断。

4、8051单片机响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把 PC的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送 PC ,使程序执行转向程序存储器中的中断地址区。

二、选择题:1、在中断服务程序中,至少应有一条( D )。

A、传送指令B、转移指令C、加法指令D、中断返回指令2、要使MCS-51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( A )。

A、 98HB、 84HC、 42HD、 22H3、MCS-51响应中断时,下列哪种操作不会发生( A )A、保护现场B、保护PCC、找到中断入口D、保护PC转入中断入口4、MCS-51中断源有( A )A、 5个B、 2个C、 3个D、6个5、计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( C )A、由CPU自动完成B、在中断响应中完成C、应由中断服务程序完成D、在主程序中完成6、MCS-51的中断允许触发器内容为83H,CPU将响应的中断请求是( D )。

A、 INT0,INT1B、 T0,T1C、 T1,串行接口D、 INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。

A、 INT1B、 INT0C、 T1D、T08、当CPU响应串行接口中断时,程序应转到( C )。

A、 0003HB、 0013HC、 0023HD、 0033H9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。

A、 1个B、 2个C、 3个D、0个10、外部中断1固定对应的中断入口地址为( C )。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第5章指令系统〔习题5.1〕简答题(1)定长指令字和定长操作码是一回事吗?(2)什么是Load-Store指令集结构?(3)为什么将查找操作数的方法称为数据寻“址”方式?(4)是什么特点决定了目标地址的相对寻址方式应用最多?(5)堆栈的存取原则是什么?(6)IA-32处理器的INC,DEC,NEG和NOT都是单操作数指令,这个操作数应该是源操作数还是目的操作数?(7)IA-32处理器的乘除法运算针对无符号数和有符号数,有两种不同的指令。

只有一种指令的加减法如何区别无符号数和有符号数运算?(8)为什么判断无符号数大小和有符号大小的条件转移指令不同?(9)汇编语言的标识符大小写不敏感意味着什么?(10)为什么说RISC是计算机结构上的革新?〔习题5.2〕判断题(1)存储器寻址方式的操作数当然在主存了。

(2)堆栈的操作原则是“先进后出”,压入数据是PUSH指令、弹出数据是POP指令。

(3)空操作NOP指令其实根本没有指令。

(4)指令指针或者还包括代码段寄存器值的改变将引起程序流程的改变。

(5)JMP指令对应高级语言的GOTO语句,所以不应使用。

(6)IA-32处理器的条件转移指令Jcc要利用标志作为条件。

(7)处理器的传送指令MOV属于汇编语言的执行性语句。

(8)MASM汇编语言的注释用分号开始,但不能用中文分号。

(9)通常,RISC处理器只有“取数LOAD”和“存数STORE”指令访问存储器。

(10)RISC的指令条数少、指令简单、格式固定,所以编译程序也就容易实现,并且不需要优化。

〔习题5.3〕填空题(1)JMP指令根据目标地址的转移范围和寻址方式,可以分成四种类型:段内转移、__________,段内转移、__________和段间转移、__________,段间转移、__________。

(2)IA-32处理器将ESI寄存器内容压入堆栈的指令是__________,将堆栈顶部数据弹出到EDI寄存器的指令是__________。

(3)IA-32处理器的指令“XOR EAX, EAX”和“SUB EAX, EAX”执行后,EAX=__________,CF=OF=__________。

而指令“MOV EAX, 0”执行后,EAX=__________,CF和OF没有变化。

(4)欲将EDX内的无符号数除以16,可以使用指令“SHR EDX, __________”,其中后一个操作数是一个立即数。

(5)“CMP EAX,3721H”指令之后是JZ指令,发生转移的条件是EAX=__________,此时ZF=__________。

(6)主程序调用子程序需要用__________指令,子程序最后的返回指令是__________。

(7)在IA-32指令“ADD EDX,5”中,指令助记符是__________,目的操作数是__________,另一个操作数采用__________寻址方式。

(8)MASM要求汇编语言源程序文件的扩展名是___________,汇编产生扩展名为OBJ的文件被称为___________文件,连接后生成的EXE可执行文件。

(9)CISC是英文__________的缩写,常被为__________。

对应RISC中的R来自英文__________,含义是__________。

IA-32处理器属于__________结构,MIPS处理器属于__________结构。

(10)MIPS处理器有___________个通用寄存器,其中___________总是0。

〔习题5.4〕给出IA-32处理器的32位寻址方式和16位寻址方式的组成公式,并说明各部分作用。

〔习题5.5〕说明下列IA-32处理器指令中源操作数的寻址方式,假设VARD是一个32位变量。

(1)mov edx,1234h(2)mov edx,vard(3)mov edx,ebx(4)mov edx,[ebx](5)mov edx,[ebx+1234h](6)mov edx,vard[ebx](7)mov edx,[ebx+edi](8)mov edx,[ebx+edi+1234h](9)mov edx,vard[esi+edi](10)mov edx,[ebp*4]〔习题5.6〕指出数据寻址的寄存器寻址和寄存器间接寻址的不同之处,比较数据寻址中存储器的直接寻址、间接寻址与指令寻址中的直接寻址、间接寻址。

〔习题5.7〕请分别用一条IA-32处理器指令完成如下功能:(1)把EBX寄存器和EDX寄存器的内容相加,结果存入EDX寄存器。

(2)用寄存器EBX和ESI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。

(3)用EBX和位移量0B2H的寄存器相对寻址方式把存储器中的一个双字和ECX寄存器的内容相加,并把结果送回存储器中。

(4)将32位变量VARD与数3412H相加,并把结果送回该存储单元中。

(5)把数0A0H与EAX寄存器的内容相加,并把结果送回EAX中。

〔习题5.8〕分别执行如下程序片断,说明每条指令的执行结果:(1)mov eax,80h ; EAX=__________add eax,3 ; EAX=__________,CF=__________,SF=__________add eax,80h ; EAX=__________,CF=__________,OF=__________adc eax,3 ; EAX=__________,CF=__________,ZF=__________ (2)mov eax,100 ; EAX=__________add ax,200 ; EAX=__________,CF=__________(3)mov eax,100 ; EAX=__________add al,200 ; EAX=__________,CF=__________(4)mov al,7fh ; AL=__________sub al,8 ; AL=__________,CF=__________,SF=__________sub al,80h ; AL=__________,CF=__________,OF=__________sbb al,3 ; AL=__________,CF=__________,ZF=__________〔习题5.9〕分别执行如下程序片断,说明每条指令的执行结果:(1)mov esi,10011100b ; ESI=__________Hand esi,80h ; ESI=__________Hor esi,7fh ; ESI=__________Hxor esi,0feh ; ESI=__________H(2)mov eax,1010b ; EAX=__________Bshr eax,2 ; EAX=__________B,CF=__________shl eax,1 ; EAX=__________B,CF=__________and eax,3 ; EAX=__________B,CF=__________(3)mov eax,1011b ; EAX=__________Brol eax,2 ; EAX=__________B,CF=__________rcr eax,1 ; EAX=__________B,CF=__________or eax,3 ; EAX=__________B,CF=__________(4)xor eax,eax ; EAX=__________,CF=__________,OF=__________; ZF=__________,SF=__________,PF=__________〔习题5.10〕执行如下程序片断后,CMP指令分别使得5个状态标志CF、ZF、SF、OF和PF为0还是为1?它会使得哪些条件转移指令指令Jcc的条件成立、发生转移?mov eax,20hcmp eax,80h〔习题5.11〕汇编语句有哪两种,每个语句由哪4个部分组成?〔习题5.12〕汇编语言程序的开发有哪4个步骤,分别利用什么程序完成、产生什么输出文件。

〔习题5.13〕本章例题程序片段可以形成可执行文件。

为了能够有交互效果,可以利用配套软件包中的子程序。

例如,只要在例题5-1和例题5-3程序片段最后增加如下语句,就可以显示结果。

call dispuid其中,子程序DISPUID以无符号十进制形式显示EAX寄存器内容。

请按照汇编语言的源程序框架将程序片段填入代码段,然后生成一个可执行文件。

〔习题5.14〕如下修改例题5-2程序,实现了将键盘输入的小写字母转换为大写显示:again: call readc ; 键盘输入一个字符。

语句1cmp al,'a’; 语句2jb again ; 语句3cmp al,'z’; 语句4ja again ; 语句5sub al,20h ; 语句6call dispc ; 显示一个字符。

语句7其中,子程序READC让用户从键盘按下一个字符,保存在AL寄存器;子程序DISPC将AL寄存器的字符显示。

(1)请将上述程序片段填入源程序框架、生成可执行文件。

(2)分析并验证如果输入了非小写字母(例如数字7)、然后输入小写字母,程序执行流程(给出执行语句的编号)。

(3)如果要实现输入大写字母转换为小写显示,如何修改上述程序?〔习题5.15〕RISC技术有哪些方面的主要特色?〔习题5.16〕从通用寄存器、数据寻址、指令格式等方面,比较IA-32处理器和MIPS处理器,说明各自特点。

相关文档
最新文档