精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>○ DOS>>中断大全>>中断大全(译文)之一

主题:中断大全(译文)之一
发信人: kingfox()
整理人: yangcs(1999-12-12 11:52:33), 站内信件
中断大全

----------------------------------------------------------------------
----------

Interrupt List Release 60 Last change 03jan99
Copyright (c) 1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999 R
alf Brown

翻译:老狐狸 [email protected] 电子工程师园地 
----------------------------------------------------------------------
----------

前言
本文是一篇翻译文章。 
本文收集了基于Intel x86处理器或者兼容处理器的系统所使用的大量中断资源,
不仅详细介绍了BIOS中断,还列出了各种常用软件使用的系统中断情况。 


----------------------------------------------------------------------
----------

标志
使用“->”而不是“=”符号表明被指向的寄存器或者寄存器对包含的是一个指向
某一指定项目的指针,而不是项目自己。寄存器对(比如AX:BX)表示这一项目分
为两个部分,第一个寄存器包含高位的部分。

中断号的后面会跟着一个或者多个字母,其含义如下:U - 未公开的功能;u - 
部分公开的功能;P - 仅在保护模式下有效;R - 仅在实模式或者V86模式下有效
;C - 回调功能;O - 已废弃;



----------------------------------------------------------------------
----------

分类
The ninth column of the divider line preceding an entry usually contai
ns a classification code (the entry has not been classified if that ch
aracter is a dash). The codes currently in use are:

A - 应用程序,a - 访问软件(屏幕阅读器等),
B - BIOS,b - 厂商定义的BIOS扩展,
C - 由CPU生成,c - 缓存/假脱机程序,
D - DOS内核,d - 磁盘I/O增强,
E - DOS扩展器,e - 电子邮件,F - FAX,
f - 文件操作,G - 调试器/调试工具,g - 游戏,
H - 硬件,h - 厂商定义的硬件,
I - IBM工作站/终端仿真器,i - 系统信息/监控程序,
J - 日文,j - 搞笑程序,
K - 键盘增强程序,k - 文件/磁盘压缩工具,
l - 外壳/命令解释器
M - 鼠标/点设备,m - 内存管理
N - 网络,n - 非传统输入设备
O - 其他操作系统
P - 打印机增强程序,p - 电源管理
Q - DESQView/TopView和Quarterdeck程序
R - 远程控制/文件访问,r - 运行时刻支持
S - 串行I/O,s - 声音/语音,
T - 基于DOS的任务切换程序/多任务程序,t - TSR库
U - 驻留工具,u - 仿真器
V - 视频,v - 病毒/反病毒
W - Microsoft Windows
X - 扩展总线BIOSes,x - 非易失性配置存储器
y - 安全,* - 保留


----------------------------------------------------------------------
----------
--------C-00---------------------------------
 
INT 00 C - 由CPU产生 - 除法错  
描述  如果DIV/IDIV指令的除数是零或者商溢出,则发生该中断。DX和AX不会改
变。 
注意  在8086/8088系统上,返回地址指向下一条指令。在80286以上的处理器中
,返回地址指向该除法指令。如果除数是80h或者8000h,8086/8088处理器将发生
该中断。  
参见  INT 04,操作数AAD 

----------------------------------------------------------------------
----------
--------G-00---------------------------------  
INT 00 - Zenith - ROM调试程序  
描述  当处于BIOS级的时候激活ROM调试器,等效于在系统引导的时候按下Ctrl-
Alt-Ins组合键。  
注意  由于DOS重新定义了INT 00的向量,需要恢复该向量导源使得ROM BIOS值以
在DOS加载的时候激活调试程序。  
参见  INT 03"Columbia"  

----------------------------------------------------------------------
----------
--------C-01---------------------------------  
INT 01 C - CPU产生 - 单步运行  
描述  如果TF标志置位,则执行了每一条指令之后会触发该中断。激活“单步”
中断捕获程序之后TF标志被清除。  
注意  由于中断按照优先级排列,因而在INT 01把CS:IP/FLAGS压入堆栈并清除了
TF标志之后、调试器的单步调试捕获程序的第一条指令被执行之前,外部中断仍
旧可以被触发。  
参见  INT 03 CPU  

----------------------------------------------------------------------
----------
--------C-01---------------------------------  
INT 01 C - CPU产生 (80386以上处理器) - 调试异常  
描述  在很多调试程序感兴趣的情况下都会由CPU产生。  
注意  以下事件可能会触发该中断:

指令地址断点错 - 将会返回到执行指令 
数据地址断点陷阱 - 将会返回到后面的指令 
一般检查错,调试寄存器被占用 
任务切换断点陷阱 
未公开的386/486操作码F1h - 将会返回到下一条指令 
 
参见  INT 03 CPU  

----------------------------------------------------------------------
----------
--------H-02---------------------------------  
INT 02 C - 外部硬件触发 - 不可屏蔽中断  
描述  当NMI管脚输入有效的时候CPU就会生成该中断  
注意  对于80286以上的处理器,返回地址指向被中断的指令。在80286以上处理
器中,以后的NMIs会被禁止,直到执行了一条IRET指令。但是另外的NMI会被硬件
记住,当IRET指令重新开放NMI的时候,这个记住的中断就会被处理。 
如果中断允许的话,可屏蔽的中断可以打断NMI处理程序。 

尽管Intel的文档表明这个中断的典型应用是电源出错处理,但是在IBM兼容机器
上还有许多其他的用途:


内存校验错:适用于除了Jr、CONV和一些没有内存校验功能的机器之外的所有其
它机器; 
硬件调试器的Breakout切换; 
协处理器中断:适用于除了Jr、CONV之外的所有其它机器; 
键盘中断:适用于Jr、CONV机器 
I/O通道检查:适用于CONV和PS50+ 
磁盘控制器上电请求:适用于CONV机器 
系统挂起:适用于CONV机器 
实时时钟:适用于CONV机器 
系统看门狗定时器、超时中断:适用于PS50+ 
DMA定时器超时中断:适用于PS50+ 
电池不足:HP 95LX 
 
参见   
 

----------------------------------------------------------------------
----------
--------C-03---------------------------------  
INT 03 C - CPU产生 - 断点  
描述  由一字节的断点指令(操作码CCh)触发。  
注意  调试器用来实现断点功能,比如DOS Debug的g命令。也被用于Turbo Pasc
al v1.2.3中(当使用了{$U+}选想的时候)。返回地址指向断点指令后面的字节。
Novell DOS 7的EMM386显示了异常错误信息(GPF、非法操作码等)之后、等待用
户输入之前的时候也会调用该中断。对于QEMM-386,当提示错误信息之后,用户
按下了“I”键(未公开的功能)时,也会调用此中断。  
参见  INT 01"CPU"  

----------------------------------------------------------------------
----------
--------G-03---------------------------------  
INT 03 - Columbia PCs (desktop,VP portables) - ROM DEBUGGER  
描述  如果INT 03向量没有改变的话则激活ROM调试器。等效于当引导的时候按下
了ESC键。  
注意   
 
参见  INT 00"Zenith",INT 03"Realia"  

----------------------------------------------------------------------
----------
--------G-03---------------------------------  
INT 03 - Realia COBOL - 调试器支持  
注意  Realia COBOL启动的时候,在中断捕获程序之前检查一个8字节的标志。 
 
错误  如果INT 03向量的偏移小于8,编译器及其生成的所有的可执行文件会使得
系统崩溃。  
参见  INT 03"Columbia"  

--
------------------------------------------------------------
有缘则聚,缘尽则散,随缘而定,随遇而安。
------------------------------------------------------------
欢迎光临“电子工程师园地”http://kingfox.163.net

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.101.57.169]

[关闭][返回]