文章目录
1. 预备知识
-
对于 8086CPU,当 CPU 内部出现如下情况时,将产生相应的中断信息:
除法错误
,
单步执行
,
执行 int0 指令
,
执行 int 指令
。上述四种中断信息的类型码分别为 0、1、4 和 n,其中 n 对应执行 int n 指令。 - 用来处理中断信息的程序称为中断处理程序。
- CPU 用 8 位中断类型码通过中断向量表找到相应的中断处理程序的入口地址,中断向量即中断处理程序的入口地址。
-
在 8086CPU 中,中断向量表存放了 256 个中断源,
固定
存放在 0000:0000~0000:03E8 单元。在中断向量表中,一个表项占两个字,高地址字存放段地址,低地址字存放偏移地址。
2. 检测点 12.1
(1)用 Debug 查看内存,情况如下:
0000:0000 68 10 A7 00 8B 01 70 00-16 00 9D 03 8B 01 70 00
则,4 号中断源对应的中断处理程序的入口地址为
0070:018B
。
- 由预备知识,在中断向量表中,一个表项占两个,高地址存放段地址,低地址存放偏移地址。则 4 号中断源对应于 8B 01 70 00 部分。
(2)存储 N 号中断源对应的中断程序入口的偏移地址的内存单元的地址为
4N
。存储 N 号中断源对应的中断程序入口的段地址的内存单元的地址为
4N+2
- 分析同上。
3. 总结
-
在 8086CPU 中,中断向量表存放了 256 个中断源,
固定
存放在 0000:0000~0000:03E8 单元。在中断向量表中,一个表项占两个字,高地址字存放段地址,低地址字存放偏移地址。
版权声明:本文为Skies_原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。