实验十二 编写0号中断的处理程序 答: 分析:
在这个实验以后,大部分的实验都是要求我们写“中断处理程序”,可见这非常重要:对我们理解系统设计时的“中断处理机制”将非常有帮助,甚
至对我们日后设计自己的操作系统也非常重要。
其实,这个实验的源程序,书中已经循序渐进的给出拉。
下面我们简要分析一下一个中断处理程序的编写、安装、到中断向量表的设置的几个重要步骤。(如果之前对中断处理机制不是很明白,请先仔细阅
读书中的相关内容以及《微机原理》中的相关内容):
1,编写进行相关操作的中断处理程序,这里和编写子程序类似,注意参数的传递,寄存器的保护和恢复,以及程序的返回等
2,中断处理程序的安装,安装的时候涉及到的问题:
(1)安装程序在什么地方(2)安装程序到什么地方(3)安装程序的代码的长度
注意:这里经常结合串传送指令、offset、rep、cx等来实现[其中的串传送指令具体见书中的219页]
3,设置中断向量表:也就是把程序安装的入口地址写入中断向量表中,这里涉及到原来的中断向量的保存和恢复问题
实现: 下面直接给出,这个中断处理程序以及检测程序
程序见12.asm
【注:
书中给出的源程序不是很理想,在中断处理程序中没有进行相关寄存器的保护工作,也没有恢复被我们改动了的原来的中断向量,所以需要我们自己进
行补充,下面是补充过后的相对更加完善的源程序:121.asm
】