汇编语言上天之路(第60-63(内中断))
第60-63(内中断)
内中断:CPU发来特殊的信息,然后CPU去处理这个特殊信息
如下情况将发生中断信息:
1.除法错误
2.单步执行
3.执行into指令
4.执行int指令
CPU对中断的处理要有中断类型码,中断类型码通过查找中断向量表来定位中断处理程序
中断向量表:存放中断处理程序的入口地址(8086PC机,中断向量表在内存0000:0000-0000:03FF存放)
一个表项占两个字节:高地址存放中断程序的段地址,低地址存放中断程序的偏移地址
中断过程:
1.从中断信息获取中断类型码N
2.pushf
3.TF = 0,IF = 0(防止在中断处理程序中再次中断)
4.push cs
5.push ip
6.IP = N*4,CS = N*4+2
中断处理程序要用iret返回:
iret:
pop IP
pop CS
popf
单步中断:
CPU执行一条语句之后,检测到TF=1就产生单步中断
debug的t命令,就是CPU单步中断处理程序,功能为显示了寄存器内容再等待输入
对栈指针的设置:
不响应中断的,所以mov ss,ax执行后,CPU不响应任何中断,所以一般ss,sp一起设置
实验12:
**** Hidden Message *****
页:
[1]