第5章 指令系统习题
- 格式:doc
- 大小:44.00 KB
- 文档页数:4
第五章指令系统一、选择题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 不能支持数值处理。
第五章习题参考答案一、填空题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、指令的寻址方式有顺序和跳跃两种方式,采用跳跃寻址方式,可以实现______。
第五章指令系统
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包括哪些中断指令?。
第五章习题参考答案一、填空题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 )。
5-1 根据下列语句表图程序,写出梯形图程序。
LD I0.0 AN I0.1 LD I0.2 A I0.3 O I0.4A I0.5 OLDA I0.6 = Q0.15-2 根据下列语句表图程序,写出梯形图程序。
LD I0.0 LPSLD I0.1 O I0.2 ALD= M0.0 LRD LD I0.3 O I0.4 ALD= M0.1 LPPA I0.5 = Q0.05-3 写出图5-79所示梯形图的语句表程序。
LD I0.0O I0.3 LD I0.1 O I0.4 ALDAN I0.2 = Q0.1 LD Q0.1 TON T37,+30LD T37S Q0.2,4LD I1.0 R Q0.3,1图5-79 题5-3的梯形图 图5-80 题5-4的梯形图 5-4 写出图5-80所示梯形图的语句表程序。
LD I0.4 EU SHRB I0.5,V3.0,4 LD I0.1 LPS A V3.0 S Q3.0,2 LRD A V3.1R Q3.1,1LRDA V3.2S Q3.2,3LPPA V3.3R Q3.3,15-5 试设计一个照明灯的控制程序。
当按下接在I0.0上的按钮后,接在Q0.0上的照明灯可发光30s 。
如果在这段时间内又有人按下按钮,则时间间隔从头开始。
这样可确保在最后一次按完按钮后,灯光可维持30s 的照明。
5-6 试设计电动机起/停控制的梯形图程序,并与所设计的电气原理图进行比较。
第一台电动机起动10s 后,第二台电动机自行起动,运行5s 后,第一台电动机停止并同时使第三台电动机自行起动,再运行10s 后,电动机全部停止。
第五章习题参考答案一、填空题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、 98H????????? B、 84H????????? C、 42H??????????? D、 22H3、MCS-51响应中断时,下列哪种操作不会发生(? A?? )?? A、保护现场???? B、保护PC???? C、找到中断入口????? 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,INT1???? B、 T0,T1???? C、 T1,串行接口??? D、? INT0,T07、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应(? B?? )。
第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处理器,说明各自特点。