8088系统的中断

1.按照中断请求的来源可以分为

	○ 内部中断(完全在CPU内部实现)
		§ 异常中断----异常事件引起的(掉电、除法、溢出等)
		§ 软件中断----中断指令引起的(INT n---中断调用系统的DOS功能)
	○ 外部中断
		§ 可屏蔽中断----INTR引脚上输入的中断(高电平有效)。
			□ IF=1表示开中断,CPU响应INTR中断
			□ IF=0表示关中断,CPU不响应INTR中断
		§ 非屏蔽中断----NMI中断(上升沿有效)
			□ 只要有NMI请求,CPU就一定会响应中断

2.中断处理的过程

	○ 中断请求
		§ 边沿触发:适用于CPU可以及时响应的中断
			□ NMI采用的就是边沿触发中断
		§ 电平触发:适用于CPU不能及时响应的中断,所以需要中断源保持一段时间
			□ INTR采用的是电平中断
			□ 电平中断的请求信号应该一直保持到CPU响应中断为止;CPU响应中断后要及时撤除,避免引起多次响应

在这里插入图片描述

			□ 外设的中断请求信号IRQ被锁存进中断请求寄存器中
			□ 经过逻辑输入到INTR外部可屏蔽中断引脚
			□ CPU响应中断之后会以此查询并行端口的中断状态,查询到哪个中断时就去响应哪个中断源的中断服务程序
			□ 缺点:花费的时间较长,影响中断响应的实时性
			□ 优点:线路简单、优先权安排灵活

在这里插入图片描述

				® 中断控制器安排各中断源的优先级级别
				® 核心思想:根据中断向量码(中断类型码)来确定中断源,每一个中断类型码都对应有一个中断服务程序入口
			□ 链式判优
					○ 中断响应
		§ CPU响应中断的条件
			□ 1.正在执行的指令的最后一个时钟周期执行结束
			□ 2.CPU处于开中断状态也即IF=1(对于NMI则无此要求)
			□ 3.当前没有发生复位(RESET)、保持(HOLD),因为此时CPU没有工作不可能响应中断请求;
			□ 4.内部中断和非屏蔽中断请求(NMI),因为他们的优先级高于INTR,CPU会优先响应NMI
			□ 5.若当前正在执行开中断STI、中断返回指令IRET,则他们执行完后再执行一条指令,CPU才可以相响应中断请求;
			    若对于前缀指令,LOCK、REP等,CPU会将他们和其后的一条指令看作是一个整体,然后待这条指令执行完之后再响应中断请求
		§ 中断响应时,CPU会向中断源发出中断响应信号,同时会做如下工作
			□ 保护硬件现场FLAGS
			□ 保护断点(先压入CS,再压入IP)
			□ 获得中断服务程序入口
	○ 中断处理
		§ 通过压栈,保护软件现场
		§ 开中断,因为CPU在响应中断时会自动关中断(IF=0),为了实现中断嵌套,需要开中断
		§ 执行中断处理程序
		§ 关中断,在恢复现场的过程中不希望被打扰
		§ 恢复软件现场
	○ 中断返回
		§ 弹出断点地址→先弹出IP、再弹出CS
		§ 恢复硬件现场
		§ 开中断

在这里插入图片描述

3. 8088的中断系统

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

咖啡与乌龙

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

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

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

打赏作者

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

抵扣说明:

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

余额充值