8-3:什么叫中断嵌套?中断嵌套的原则是什么?
答:
CPU在处理级别较低的中断过程中,出现了级别较高的中断请求。CPU停止执行低级别中断的处理程序而去优先处理高级别中断,等高级别中断处理完毕后,再接着执行低级别的未处理完的中断处理程序,这种中断处理方式称为多重(级)中断或中断嵌套。
中断嵌套的原则:高级别的中断可以嵌套低级别中断,低级别中断不能嵌套高级别中断,同级别中断不能互相嵌套。对于可屏蔽中断,由于CPU在响应中断时已将IF清零,所以一定要在中断处理程序中加入开中断指令,才有可能进行中断嵌套。
8-6:什么叫矢量中断?什么是中断矢量表?中断矢量表的内容是什么?
答:
中断矢量就是中断服务程序的入口地址。
8086的中断系统能够处理256个不同的中断,每一个中断安排一个编号,范围为0~255,称为中断类型。每种中断类型对应的中断服务程序的入口地址称为中断矢量(或中断向量)。把系统中所有的中断矢量按中断类型从小到大的顺序放到存储器的特定区域,该区域称为中断矢量表。每个中断矢量在中断矢量表中占用4字节,CPU响应中断后通过将中断类型×4得到中断矢量在中断矢量表中的首地址。
8-8:8086/8088共有多少矢量号?每一个矢量号中断入口地址占用矢量表的几个字节空间?它们的内容是什么?中断矢量表定位于内存何处?
答:
8086/8088共有256个中断矢量号,每个中断矢量入口地址占用4个字节空间,内容是中断服务程序入口的偏移地址和段地址,中断矢量表位于存储器的最低地址区(0000H~03FFH)
8-9:请叙述中断矢量号(中断类型)、中断矢量表和中断服务程序的入口地址三者的关系。 答:
每个中断矢量号与一个中断服务程序相对应,中断服务程序的入口地址存放在内存的中断矢量表内。中断矢量表是中断矢量号与它相应的中断服务程序入口地址之间的转换表。
8-11:若中断号N=13H,计算此中断服务程序的入口地址在矢量表中的地址。
答:4CH-4FH
8-12:若当前CPU正在对某一外部中断请求IRQm服务,而外部又有两个中断请求信号IRQn和IRQi同时有效,试说明IRQi的请求马上得到响应的条件是什么(0<=(m,n,i)<=7)? 答:
IRQi的请求马上得到响应的条件是IRQi的中断屏蔽位为0,相应的中断请求位为1,而且中断服务优先级要高于IRQm和IRQn