第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、 98H
B、 84H
C、42H
D、 22H
3、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,T0
7、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。
A、INT1
B、INT0
C、 T1
D、 T0
8、当CPU响应串行接口中断时,程序应转到( C )。
A、0003H
B、0013H
C、 0023H
D、 0033H
9、执行MOV IE,#03H后,MCS-51将响应的中断是( D )。
A、1个
B、2个
C、 3个
D、 0个
10、外部中断1固定对应的中断入口地址为( C )。
A、0003H
B、000BH
C、 0013H
D、 001BH
11、MCS-51单片机可分为两个中断优先级别,各中断源的优先级别
设定是利用寄存器( B )。
A、IE
B、IP
C、 TCON
D、 SCON
12、( C )非单片机系统响应中断的必要条件。
A、 TCON或SCON寄存器内的有关中断标志位为1
B、 IE中断允许寄存器内的有关中断允许位置1
C、 IP中断优先级寄存器内的有关位置1
D、当前一条指令执行完
13、各中断源发出的中断请求信号,都会标记在MCS-51系统中的( B )。
A、TMOD
B、TCON/SCON
C、IE
D、 IP
14、执行返回指令时,返回的断点是( C )
A、调用指令的首地址
B、调用指令的末地址
C、调用指令下一条指令的首地址
D、返回指令的末
地址
15、中断查询确认后,在下列各种8051单片机运行情况中,能立即进行响应的是:( D )
A、当前正在执行高优先级中断处理
B、当前正在执行RETI指令
C、当前指令是DIV指令,且正处于取指令的机器周期
D、当前指令是MOV A,R3
16、当CPU响应外部中断0 INT0的中断请求后,程序计数器PC的内容是( A )。
A、0003H
B、000BH
C、0013H
D、001BH
17、当CPU响应外部中断1 INT1的中断请求后,程序计数器PC的内容是( C )。
A、0003H
B、000BH
C、0013H
D、001BH
18、MCS—51单片机在同一级别里除串行口外,级别最低的中断源是( C )。
A、外部中断1
B、定时器T0
C、定时器T1
D、串行口
19、MCS—51单片机在同一级别里除INT0外,级别最高的中断源是( B )。
A、外部中断1
B、定时器T0
C、定时器T1
D、外部中断0
20、当外部中断0发出中断请求后,中断响应的条件是( C )。
A、SETB ET0
B、SETB EX0
C、MOV IE,#81H
D、MOV IE,#61H
21、当定时器T0发出中断请求后,中断响应的条件是( C )。
A、SETB ET0
B、SETB EX0
C、MOV IE,#82H
D、MOV IE,#61H
22、外部中断0 的入口地址是( A )。
A、0003H
B、000BH
C、0013H
D、001BH
24、MCS—51单片机CPU开中断的指令是( A )。
A、SETB EA
B、SETB ES
C、CLR EA
D、SETB EX0
25、MCS—51单片机外部中断0开中断的指令是( B )
A、SETB ETO
B、SETB EXO
C、CLR ETO
D、SETB ET1
26、MCS—51单片机外部中断1和外部中断0的触发方式选择位是( C )。
A、TR1和TR0
B、IE1和IE0
C、IT1和IT0
D、TF1和TF0
27、8031单片机共有5个中断入口,在同一级别里,5个中断源同时发出中断请求时,程序计数器PC的内容变为( B )。
A、000BH
B、0003H
C、0013H
D、001BH 28、MCS—51单片机响应中断的过程是( D )。
A、断点PC自动压栈,对应中断矢量地址装入PC
B、关中断,程序转到中断服务程序
C、断点压栈,PC指向中断服务程序地址
D、断点PC自动压栈,对应中断矢量地址装入PC,程序转到该矢量地址,再转至中断服务程序首地址
29、执行中断处理程序最后一句指令RETI后,( D )。
A、程序返回到ACALL的下一句
B、程序返回到LCALL的下一句
C、程序返回到主程序开始处
D、程序返回到响应中断时的下一句
30、MCS—51单片机响应中断矢量地址是( C )。
A、中断服务程序的首句地址
B、中断服务程序的出口地址
C、中断服务程序的入口地址
D、主程序等待中断指令的地址
31、一主程序中有一句LP:SJMP LP,功能指令为等待中断,当发生中断且中断返回后,( D )。
A、返回到主程序开始处
B、返回到该句的下一条指令处
C、返回到该句的上一条指令处
D、返回到该句
32、一中断子程序的最后一句不是RETI而是RET,中断返回后( A )。
A、返回到主程序中ACALL或LCALL的下一句
B、返回到主程序中响应中断时一句的下一句
C、返回到主程序开始处
D、返回到0000H处
33、外部中断源1的向量地址为( C )。
A、0003H
B、000BH
C、0013H
D、002BH
34、对定时器控制寄存器TCON中的IT1和IT0位清0后,则外部中断请求信号方式为( A )。
A、低电平有效
B、高电平有效
C、脉冲上跳沿有效
D、脉冲后沿负跳有效
三、多项选择题
1、MCS—51单片机控制寄存器TCON的作用是( ABCE )等。
A、定时/计数器的启、停控制
B、定时器的溢出标志
C、外部中断请求标志
D、确定中断优先级
E、选择外部中断触发方式
2、8031单片机上电复位后,内容为0的寄存器是(ABCDE )。
A、R0,R1
B、R7
C、
A CC D、
B E、TMOD、TCON
3、MCS—51的中断系统的相关控制有(ACDE )。
A、特殊功能寄存器TCON、SCON
B、模式控制寄存器TMOD
C、中断允许控制寄存器IE
D、中断优先级寄存器IP
E、中断顺序查询逻辑
4、CPU响应中断的条件包括(ACDE )。
A、现行指令运行结束
B、保护现场
C、有中断请求
D、申请中断的中断源中断允许位为 1
E、已开放CPU 中断
5、MCS—51的中断源是(ABCDE )。
A、外部输入中断源0(P3.2)
B、外部输入中断源1(P3.3)
C、T0的溢出中断源
D、串行口发送和/接收中断源
E、T1的溢出中断源
6、MCS—51单片机外部中断源的中断请求方法可以是(BD )。
A、高电平触发
B、低电平触发
C、上升沿触发
D、下降沿触发
E、一串脉冲头朝下的连续矩形波触发
7、下列哪些是8051单片机的中断矢量地址(ABDE )。
A、0003H
B、000BH
C、0007H
D、0013H
E、001BH
8、 8051单片机的IE寄存器的用途是(BCE )。
A、确定中断方式
B、确定CPU中断的开放或禁止
C、定时器中断的开放或禁止
D、定时器溢出标志
E、选择外部中断的开放或禁止
9、下述条件中,能封锁主机对中断的响应的条件是(ABC )。
A、一个同级或高一级的中断正在处理时
B、当前周期不是执行当前指令的最后一个周期
C、当前执行的指令是RETI指令或对IE或IP寄存器进行读/写的指令
D、当前执行的指令是一长跳转指令
E、一个低级的中断正在处理时
五、问答题
1、什么叫中断嵌套中断嵌套有什么限制中断嵌套与子程序嵌套有什么区别
答:高优先级中断“中断”正在执行的低优先级中断,这就是中断嵌套。
中断嵌套只能高优先级“中断”低优先级,低优先级不能“中断“高优先级,同一优先级之间也不能相互“中断”。
中断嵌套与子程序嵌套的区别:
①子程序嵌套是在程序中事先安排好的;中断嵌套是随机发生的。
②子程序嵌套无次序限制,中断嵌套只允许高优先级“中断”低优先级。
2、为什么一般情况下,在中断入口地址区间要设置一条跳转指令,转移到中断服务程序的实际入口处
答:由于80C51相邻两个中断入口地址间只有8字节的空间,8个字节只能容纳一个有3~8条指令的极短程序。一般情况中中断服务程序均大大超出8个字节长度。因此,必须跳转到其他合适的地址空间。
4、根据下列已知条件,试求中断开关状态。
①IE=93H;②IE=84H;③IE=92 H;④IE=17H
解:①IE=93H=B:INT0、T0、串行口开中断,其余关中断;
②IE=84H=B:INT1开中断,其余关中断;
③IE=92H=B:T0、串行口开中断,其余关中断;
④IE=17H=00010111B:关中断。
5、按下列要求设置IP:
①INT1、串行口为高优先级,其余为低优先级;
②T1为高优先级,其余为低优先级;
③T0、T1为低优先级,其余为高优先级;
④串行口为低优先级,其余为高优先级。
解:
①INT1、串行口为高优先级,其余为低优先级:IP=00010100B;
②T1为高优先级,其余为低优先级:IP=00001000B;
③T0、T1为低优先级,其余为高优先级:IP=00010101B;
④串行口为低优先级,其余为高优先级:IP=00001111B。
6、根据下列已知条件,试求中断优先级状态。
①IP=16H;②IP=ECH;③IP=03 H;④IP=1FH
解:①IP=16H =00010110B:INT1、T0、串行口为高优先级,其余为低优先级;
②IP=ECH =B:INT1、T1为高优先级,其余为低优先级;
③IP=03H =00000011B:INT0、T0为高优先级,其余为低优先级;
④IP=1FH =00011111B:全部为高优先级,相当于未设置优先级。
7、要求80C51五个中断源按下列优先顺序排列,判是否有可能实现若能,应如何设置中断源的中断优先级别若不能,试述理由。
①T0、T1、INT0、INT1、串行口
②串行口、INT0、T0、INT1、T1
③INT0、T1、INT1、T0、串行口
④INT0、INT1、串行口、T0、T1
⑤串行口、T0、INT0、INT1、T1
⑥INT0、INT1、T0、串行口、T1
解:①T0、T1、INT0、INT1、串行口:能。T0、T1为高优先级,其余为低优先级。
②串行口、INT0、T0、INT1、T1:能。串行口为高优先级,其余为低优先级。
③INT0、T1、INT1、T0、串行口:不能。80C51只有两个中断优先级。当设置INT0、T1为高优先级时,INT1、T0、串行口处于同一低优先级,而T0的优先权在排在INT1之前,INT1无法优先T0。
④INT0、INT1、串行口、T0、T1:能。INT0、INT1、串行口为高优先级,其余为低优先级。
⑤串行口、T0、INT0、INT1、T1:不能。80C51只有两个中断优先级。当设置串行口为高优先级后,T0、INT0、INT1、T1 处于同一低优先级,而INT0的优先权排在T0前面,T0无法优先INT0。
⑥INT0、INT1、T0、串行口、T1:不能。80C51只有两个中断优先级。当设置INT0、INT1为高优先级后,T0、串行口、T1 处于同一低优先级,而T1的优先权排在串行口前面,串行口无法优先T1。
8、试编写一段对中断系统初始化的程序,使之允许INT0、INT1、T0、串行接口中断,且使T0中断为高优先级中断。
解: MOV IE,#97H
MOV IP,#02H
9、若规定外部中断1为边沿触发方式,低优先级,在中断服务程序将寄存器B的内容左循环一位,B的初值设为02H,按要求补充完整主程序与中断服务程序。
ORG 0000H
LJMP MAIN
ORG 0013H
LJMP WB
ORG 0100H
MAIN:SETB EA
SETB EX1
CLR PX1
SETB IT1
MOV B,#02H
WAIT:SJMP WAIT
WB:MOV A,B
RL A
MOV B,A
RETI