而且书上也说是一般情况下需要关中断,没说完全需要关中断。
在保护现场和恢复现场时,为了不使现场受到破坏或者造成混乱,一般不响应新的中断请求.这就要求在编写中断服务程序时,注意在规定此时CPU 不响应新的中断.
这段是书上注明的。
11、当正在执行某一个中断源的中断服务程序时,如果有新的中断请求出现,试问在什么情况下可响应新的中断请求?在什么情况下不能响应新的中断请求?
答:(1)符合以下6个条件可响应新的中断请求:
a) 有中断源发出中断请求
b) 中断允许位EA=1,即CPU开中断
c) 申请中断的中断源的中断允许位为1,即中断没有被屏蔽
d) 无同级或更高级中断正在被服务
e) 当前的指令周期已结束
f) 若现行指令为RETI或访问IE或IP指令时,该指令以及紧接着的另一条指令已被执行完
符合这6种情况都可以进行新的中断。那在现场保护不符合这6种情况。
麻烦大家再给点意见。
|