您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 中断向量 >

只知道中断类型 怎么就能求出中断服务入口地址? 类型乘4不是向

发布时间:2019-07-08 21:18 来源:未知 编辑:admin

  只知道中断类型 怎么就能求出中断服务入口地址? 中断类型乘4不是中断向量的地址吗?又不是中断向量

  只知道中断类型 怎么就能求出中断服务入口地址? 中断类型乘4不是中断向量的地址吗?又不是中断向量

  书上有个题知道类型是8,直接乘以4就得到偏移地址,而例题中类型是17,又是自己给出中断向量的值,不给值怎么能算呢?不理解...

  书上有个题 知道类型是8,直接乘以4就得到偏移地址,而例题中类型是17,又是自己给出中断向量的值,不给值怎么能算呢?不理解

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部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号中断服务子程序。

  这样就可以啦。再简单描述下:由中断类型号n*4得到中断服务子程序入口地址,从这个地址读4个字节单元,前面的两个字节单元是段内偏移地址,后面两个字节单元是段基址,然后CPU再根据这个地址去读取中断服务子程序。

  由这4个字节单元读出来的地址不是才叫中断服务子程序入口地址码? 乘以4应该叫做中断向量的地址吧?

  对,你说的是对的,不好意思,我刚才口误说错了。n*4是中断向量地址。你是想知道如何去读,用汇编程序?

http://rotorooterpa.com/zhongduanxiangliang/287.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有