微机个人笔记-中断

来源:互联网 发布:用友软件 主要客户 编辑:程序博客网 时间:2024/05/01 15:16

中断

中断(异常和随机性)

 

中断来源

1.内部中断(CPU内部的中断)

a) 异常中断

b) 软件中断

2.外部中断

a) 可屏蔽中断(INTR中断) 高电频有效

b) 非屏蔽中断(NMI中断) 上升沿有效信息

 

主要讲解外部中断

 

外部可屏蔽中断响应的一般过程

1.中断请求

a) 外部可屏蔽中断请求信号:INTR

b) 中断请求信号应保持到中断被处理为止

2.中断源识别及中断优化

a) 软件查询法

b) 中断矢量法

i. 由中断源提供中断型号,CPU更具类型确定中断源

C) 中断判优

i. 低优先级的中断程序允许高优先级的中断源所中断

ii. 如果优先级一样用排队法,先来先服务

iii. 中断控制器(8259A)接入INTR----负责连入外部中断源管理中断源谁的优先级高,谁的优先级低,输出端连接CPUINTR

3.中断响应

a) 外部可屏蔽中断响应信号:#INTA

i. 向中断源发出#INTA中断响应信号;

ii. 关中断->不允许响应其他中断

iii. 保护硬件现场->FLAGS压入堆栈

iv. 保护中断->CSIP压入堆栈

v. 获取中断服务程序入口地址

vi. 都由硬件系统完成

4.中断处理(服务)

a) 执行中断服务子程序

i. 保护软件现场(参数)->PUSH完成

ii. 开中断->可以响应级别更高的中断请求

iii. 中断处理

iv. 关中断

v. 恢复现场

vi. 中断返回

b) 中断服务子程序的特点:

i. 为”远过程”

ii. 用IRET指令返回

5.中断返回

 

中断向量表

1.存放各类中断的中断服务程序的入口地址;

2.位于内存的00000H~003FFH(一共1KB)

3.每个入口占4Bytes,低字为段内偏移,高字为段基地址

1 0
原创粉丝点击