指令表示n号子程序的开始位置?


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


· 知道合伙人互联网行家

2011年中山职业技术学院毕业,现担任毅衣公司京东小二


8086系统在存储器的最低1KB区域(0FFH)建立一个中断向量表,存放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号中断服务子程序。

老哥,我要的是66H这个中断号的物理地址的具体计算方法,该怎么计算

下载百度知道APP,抢鲜体验

使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。

我要回帖

更多关于 int8指令 的文章

 

随机推荐