1.外部中断
•外部中断是由CPU外部引起的中断,需要外设产生一个信号来通知CPU,包括非屏蔽中断NMI和可屏蔽中断INTR。
•非屏蔽中断NMI不能被禁止,它只要产生就必须响应,不受CPU的中断允许触发器IF的控制,其中断号为2,一般用于最急迫的事情。它的优先级高于INTR。
•可屏蔽中断INTR受CPU的中断允许触发器IF的控制,可由指令来实现控制:STI使IF=1允许中断,CLI使IF=O禁止中断。
2.内部中断
•内部中断是由CPU状态的改变或执行中断指令而产生的中断,它不受IF的控制,主要用于功能调用、程序调试和意外情况处理。
•内部中断包括四类: 除法错中断、单步中断、溢出中断、软件中断。
•各类中断源的优先级别由高到低的顺序依次为内部中断、NMI、INTR、单步中断。
中断向量表
•中断向量表是中断服务程序的入口地址表。
• 每个中断服务程序的入口地址都有2个字节的段地址和2个字节的段内偏移量共4个字节组成,共有 256个中断源,所以中断向量表共占用256×4=1024字节空间,并且从存储器地址的最低端开始存放(即地址 00000H ~ 003FFH )。
•内部中断与外部中断的主要区别在于:
1.外部中断需要从数据总线上读取中断类型码,而内部中断的中断类型码是指令的一部分。
2.外部中断受中断允许触发器IF的控制,而内部中断不受IF的控制。
3.内部中断的优先级别比外部中断要高(除单步中断以外)。