8086内中断

来源:互联网 发布:ios数据恢复软件 编辑:程序博客网 时间:2024/05/16 00:41
8086的终端向量表存放在 0000:0000~0000:03FF

共1024个单元 每个中断向量4个字节

高地址存放段地址,低地址存放偏移地址。

8086CPU收到中断信息后,引发的中断过程。

1.从中断信息中取得中断类型码
2.标志寄存器入栈
3.设置标志寄存器的第八文TF和第九位IF值为0
4.cs,ip 一次入栈
6.从中断类型码m 在地址m*4和m*4+2的两个字单元中 读取中断处理程序的入口地址设置ip和cs


1.Get N
2.pushf
3.TF=0,IF=0
4.PUSH CS
5.PUSH IP
6.IP=(N*4),CS=(N*4+2)



中断处理程序的步骤:
1.保存用到的寄存器
2.处理中断
3.恢复寄存器
4.iret返回


iret:等价于
    pop ip
    pop cs
    popf






单步中断:
类型码为1

中断过程:
1.取得N
2.pushf
3.TF=0 IF=0
4.push cs,push ip
5.ip=(N*4) cs=(N*4+2)


(:TF=1的时候会触发中断)







0 0
原创粉丝点击