汇编_内中断_外中断_中断处理
Posted 一只特立独行的猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编_内中断_外中断_中断处理相关的知识,希望对你有一定的参考价值。
内中断:
1.取中断类型码n
2.标志寄存器入栈,IF=0,TF=0
3.CS,IP入栈
4.IP=n*4,CS=n*4+2
注意:
1.中断类型码是CPU内部产生。
2.IF(interrupt false)为0时不允许其他的可屏蔽中断,sti指令:IF=1,cli指令:IF=0。
外中断:
1.传入9号中断信息,判断CPU现在是否可以被中断。
2.标志寄存器入栈,IF=0,TF=0
3.CS,IP入栈
4.IP=n*4,CS=n*4+2
5.将数据通过I/O总线传入CPU。
注意:
中断类型码是外部设备通过数据总线传入CPU的。
中断处理:
在自定义有返回的中断时,首先要进行的操作。
1.存放标志寄存器
pushf
2.设置IF=0,TF=0
pushf
pop ax
and ax,11111100b
push ax
popf
3.IP和CS入栈,同时修改IP和CS为中断号的值。
call dword ptr ds:[0];调用原来的9号中断
以上是关于汇编_内中断_外中断_中断处理的主要内容,如果未能解决你的问题,请参考以下文章