搜索
当前位置: 秒秒彩平台 > 段表地址 >

中断向量表和中断程序是放在哪里的?

gecimao 发表于 2019-06-24 19:44 | 查看: | 回复:

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

  中断向量(矢量)表也称中断指示表。中断向量表放在存储单元地址的最低部位0000H到003FFH,占有1K字节的存储空间。中断向量表分成256组(类型码),每组由两个字(即4个字节)组成一个双字长的指针。每个双字指针指示一种中断类型,最多能识别256种不同类型的中断。通过这张中断向量表产生出各个中断服务程序的入口地址。

  在双字长指针的高地址中存放的字是中断服务程序入口地址所在的代码段的基址(CS),低地址字是中断服务程序入口地址相对于段基址的补偿值(IP)。CPU通过CS和IP的值得到一个20位的地址,它就是中断服务程序的实际入口地址,过程见图8-3。计算方法同求一个存储器单元实际地址的方法一样,就是将CS基址左移4位,然后加上IP的补偿值。

  cpu执行intn指令,相当于引发一个n号中断的中断过程,执行过程如下.

  每个中断向量具有一个相应的中断类型号码,由中断类型号码确定在中断向量表中的中断向量。中断类型号码乘4,将给出中断向量表中的中断向量入口第一字节的绝对地址(因为每个中断向量占4个字节)。举例说明,若中断类型号码为3,它指出中断向量表的第4个入口,则这个向量的第一字节的地址为:

  我是想问:(1)若执行INT 21中断,可以算出一个INT 21中断程序的入口地址。但是INT 21有好多的功能程序,这些功能程序是INT 21中断程序的子程序?

  (2)按照您所说的INT0-INT20是固化在ROM中。但是int21 专门用于dos中断,那它的程序不也要固化的吗?它们又不是程序员在每个程序中编的。追答(1) int21中断里有很多子例程, 究竟调用哪个例程由ah传递过去的参数决定

  (2) bios中断是固化到rom内, 机器启动后自动加载到内存的指定位置

  dos中断也是, 安装dos后, 被写入到硬盘中, 机器启动后,同样被加载到指定位置

本文链接:http://latharnaog.com/duanbiaodizhi/554.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部