中断向量表的结构

中断向量表的结构翻译自 http support microsoft com kb 71486 en us 概括系统内存底部的 1KBytes 1024 字节 被用来储存中断向量

翻译自:http://support.microsoft.com/kb/71486/en-us

概括

系统内存底部的1 KBytes(1024字节)被用来储存中断向量。一个中断向量是一个形式为“偏移:段”的4字节的值,它代表了当CPU接收到一个中断时要调用的程序的地址。一些中断向量不指向可执行代码,而是指向某些数据结构。例如中断1Eh的向量指向一个11字节的包含磁盘驱动器信息的磁盘基础表。中断向量表是Intel 80x86/8088系列处理器的一个特性。

更多信息

因为每个中断向量都是一个4字节的值,中断向量表最多可以存放256个中断向量。每个向量都被存放在“段:偏移”式的地址:0000:(int #) X 4处。例如,int 24h(严重错误)的中断向量被放在地址0000:0090h。

这个中断向量的16进制内容可能会是这样的:

0000:0090h    22 03  A1  2A

执行int 24h时,会跳转到:2AA1h : 0322h

编程中的考虑

你可以用你的处理程序的地址来覆盖相应的中断向量,从而建立你自己的中断处理程序,但不建议用这个方法。一个程序可能在修改一个中断向量的所有4个字节之前被中断,因此可能导致错误的甚至灾难性的后果。所以,为了保证与未来的MS-DOS兼容,应该使用int 21h的25h号功能(设置中断向量)和35h号功能(获取中断向量)来访问中断向量。

今天的文章 中断向量表的结构分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2024-12-14 21:06
下一篇 2024-12-14 21:01

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/86003.html