单片机实验
实 验 五 软中断程序设计
一、实验目的
通过对软中断程序的编写和调试,掌握IBM-PC系列机的软中断程序设计方法。
二、实验任务
1. 编写一个类型为60H的中断程序,其功能发出一阵铃响,在主程序中用中断INT60H调用该中断程序。
2. 编写1CH类型的中断程序,功能是每隔1秒钟显示当前的时间。
三、实验说明
1. 进行软中断程序设计时,最好使用DOS系统保留给用户应用的中断类型,否则处理不当,会引起意想不到的后果。
2. 60H属于系统保留给用户的软中断类型号,只要在中断向量表0:4*60H单元中存放用户编写的60H中断程序入口地址,用INT60H即可调用60H中断子程。
3. 1CH是一个特殊的软中断类型。PC机系统每秒18.2次08H类型硬中断程序。
在DOS系统的08H类型中断子程,有一条中断指令INT 1CH,这就意味着每执行一次08H类型中断子程,都要执行一次1CH类型的中断子程。在系统提供的1CH类型中断子程中,只有一条IRET返回指令,即1CH是系统保留给用户的具有定时功能的软中断类型。用户可以利用1CH中断子程定时执行的特点,编写具有定时功能的软中断程序。系统08H中断子程和1CH子程关系如图5-1所示。
4. 在1CH中断子程中,通过计数中断子程被执行的次数,确定时间,即18.2次为1秒时间。任务2的流程图参见图5-2和图5-3。
图5-2主程序流程 图5-3 中断处理程序流程图
四、问题思考
1. 软中断程序设计时主程序与中断程序如何编写?
2. 用户自编软件中断处理程序时能否随便选用中断类型?为什么?
3. 60H类型的中断向量是否可以不恢复?1CH类型的中断向量是否可以不恢复?
4. 用户是否需要在自编的主程序中用INT指令调用1CH中断子程序?
五、实验结果与记录
1. 画出各任务流程图,给出程序清单,另加适量注释。
2. 小结软中断程序设计方法。
全部0条评论
快来发表一下你的评论吧 !