8086微机_中断服务程序设计和响应的一般过程

中断服务程序设计和响应的一般过程

1. 确定要使用的中断类型号
	○ 中断类型号不能随便使用,不能占用系统已经用过的类型号
2. 保存原中断向量
	○ 将向量表中原来的中断入口地址保存起来,存进附加段或数据段(将向量表中原来的中断入口地址保存好,
	  然后才可以设置自己得中断向量)
3. 设置自己的中断向量
	○ 将自己的设置的中断入口地址保存在中断矢量表中,段地址放在DS,偏移地址放在DX中,然后调用DOS
	  功能调用(INT 21H)的25号功能
4. 设置中断屏蔽字(可选)
5. CPU开中断
	○ STI(CPU在响应中断的时候,会自动)
6. 恢复原中断向量
	○ 程序退出之前应该恢复原中断向量,因为程序一旦退出,这一存储区内的内容是不定的,如果CPU再一次
	  转入这个内存区,那么后果很可能导致系统死机、崩溃

CPU响应外部可屏蔽中断(INTR)的一般过程

(在IF=1的情况下)
	a. 执行完现行指令
	b. 保护断点现场(压栈保护)
		i. PSW
		ii. CS
		iii. IP
	c. 从8259A获取了中断类型号
	d. 清IF、TF
		i. 清IF:是因为系统默认执行中断程序时不允许被打断,如果用户允许被打断的话,则可以手动STI
		ii. 清TF:为了免于单步执行
	e. 中断类型号X4=中断向量
		i. IP获得值
		ii. CS获得值
	f. 进入中断入口程序

什么是中断服务子程序?

	○ 为提出中断请求的中断源服务的那段程序就是中断服务子程序

什么是中断嵌套?

	○ 允许CPU在执行一个中断服务期间,响应更高层次的中断源提出的中断请求,在服务完这个更高优先级
	  的中断源后,返回至刚刚中断服务程序继续执行
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咖啡与乌龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值