中断号66H对应的中断向量所存放单元的物理地址为( ),中断向量的第1、2个字节表示( ),第3、4字节表示( )

2025-03-26 09:54:23
推荐回答(2个)
回答1:

实方式下,中断号66H对应的中断向量所存放单元的物理地址为( 198H ),中断向量的第1、2个字节表示( 中断处理程序入口所在段的偏移地址IP )。第3、4字节表示( 中断处理程序入口所在段的首址CS )。

回答2:

8086系统在存储器的最低1KB区域(00000H~003FFH)建立一个中断向量表,存放256个中断类型的中断向量。这1024个单元被分成256组,每组包括4个字节单元,存储一个中断向量的段基址和段内偏移地址,高2个字节用于存放段基址,低两个字节用于存放段内偏移地址。
在执行某一条INT n指令时,CPU首先对断点和现场进行保护,然后将中断指令中的中断类型号n乘以4,得到一个地址,这个地址就是n号中断服务子程序的入口地址在中断向量表中的存放地址。按照这个地址,取出连续4个字节单元的内容,即n号中断服务子程序入口的段基址(2个字节)和偏移地址(2个字节),送入CS和IP,以实现n号中断调用。
例如,中断类型号为8的中断服务子程序的中断向量为0BA9H:00ABH(对应的物理地址为0BB3BH),已存放于中断向量表的00020H地址开始的连续4个字节单元中,具体的,(00020H)字单元存放00ABH,(00022H)字单元存放0BA9H。当CPU响应类型为8的中断请求时,获取其中断服务子程序入口地址的方法是:首先计算8*4=32=20H,然后从20H地址单元读出一个字信息送入IP,从22H地址单元读出一个字信息送入CS,从而使CS:IP指向逻辑地址0BA9H:00ABH,于是CPU便转去执行从物理地址0BB3BH开始的8号中断服务子程序。