发生中断请求的条件之一是

rubyt 2009-06-20 11:17:42
发生中断请求的条件之一是____.

A. 一条指令执行结束

B. 一次 I/O 操作结束

C. 机器内部发生故障

D. 一次DMA 操作结束


答案选C。

请问其它三个为什么不选,我怎么觉得都对那?
...全文
5372 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
iDev9 2012-01-07
  • 打赏
  • 举报
回复
确实全部可以!
schlafenhamster 2009-06-20
  • 打赏
  • 举报
回复
发生中断请求的充分和必要条件(充要):
必要:当前指令执行完。CPU占有总线(非DMA)。中断是开放的。
充分:有中断信号发生。
killbug2004 2009-06-20
  • 打赏
  • 举报
回复
这题出的不好

四种情况都有可能发送中断请求,不过机器故障中断优先级最高
deerwin1986 2009-06-20
  • 打赏
  • 举报
回复
B D 也对啊...
jxc25 2009-06-20
  • 打赏
  • 举报
回复
中断是优先执行的
当发生故障时要优先处理
goodider 2009-06-20
  • 打赏
  • 举报
回复
这道题看着是不严谨。好像1-4都能选择。
BAYNPU 2009-06-20
  • 打赏
  • 举报
回复 1
(1)外部中断:外部中断是来自8086CPU之外的原因引起的程序中断。它又分成两种情况:
一: 可屏蔽中断——外部的这个中断请求可以在CPU的内部被屏蔽掉,即CPU可以控制它是否引起程序中断。标志寄存器中的中断允许标志IF就是用于控制可屏蔽中断的。
二 :非屏蔽中断——外部的这个中断请求不能在CPU的内部被屏蔽,CPU必须执行它的处理程序。8086为非屏蔽中断分配了中断向量号02。
(2)内部中断:内部中断是由于8086CPU内部执行程序引起的程序中断。它又分成多种情况:
一:除法错中断——在执行除法指令时,若除数为0或商超过了寄存器所能表达的范围,则产生除法错中断。8086为它分配的向量号为0。
二:指令中断——执行中断调用指令INT n就产生指令中断,也称为软件中断,它的向量号就是n。
INT n指令为2字节指令(机器码为11001101 —n—,第2个字节就是中断向量号n),但向量号为3的指令中断(INT 3)是1字节指令(11001100),较特殊,常用做程序调试的断点中断。
调试程序DEBUG中的G命令就是利用断点中断(3号中断)中止被调试程序的。使用DEBUG调试程序时,如果在程序段最后加上一条INT 3指令,就可以停止程序运行,而不必设置断点了。
三:溢出中断——在执行溢出中断指令INTO时,若溢出标志OF为1,则产生溢出中断。它的向量号为4。
四:单步中断——若单步标志TF为1,则在每条指令执行结束后都产生单步中断。它的向量号为1。
调试程序DEBUG中的T命令就利用了单步中断。
pla_007 2009-06-20
  • 打赏
  • 举报
回复
这种题真好玩。
只建过,哪种条件下不允许发生软件中断,还没见过这样的题的。

唉,现在出题的人啊,还真有脑残的。。。。

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧