📄 s09_01.htm
字号:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><HTML><HEAD><TITLE>80386 Programmer's Reference Manual -- Section 9.1</TITLE></HEAD><BODY><B>up:</B> <A HREF="c09.htm">Chapter 9 -- Exceptions and Interrupts</A><BR><B>prev:</B> <A HREF="c09.htm">Chapter 9 -- Exceptions and Interrupts</A><BR> <B>next:</B> <A HREF="s09_02.htm">9.2 Enabling and Disabling Interrupts</A><P><HR><P><H1>9.1 Identifying Interrupts</H1>The processor associates an identifying number with each different type ofinterrupt or exception.<P>The NMI and the exceptions recognized by the processor are assignedpredetermined identifiers in the range 0 through 31. Not all of thesenumbers are currently used by the 80386; unassigned identifiers in thisrange are reserved by Intel for possible future expansion.<P>The identifiers of the maskable interrupts are determined by externalinterrupt controllers (such as Intel's 8259A Programmable InterruptController) and communicated to the processor during the processor'sinterrupt-acknowledge sequence. The numbers assigned by an 8259A PIC can bespecified by software. Any numbers in the range 32 through 255 can be used.Table 9-1 shows the assignment of interrupt and exception identifiers.<P>Exceptions are classified as faults, traps, or aborts depending on the waythey are reported and whether restart of the instruction that caused theexception is supported.<DL><DT>Faults <DD>Faults are exceptions that are reported "before" theinstruction causingthe exception. Faults are either detected beforethe instruction begins to execute, or during execution of theinstruction. If detected during the instruction, the fault isreported with the machine restored to a state that permits theinstruction to be restarted.<DT>Traps <DD>A trap is an exception that is reported at the instructionboundary immediately after the instruction in which theexception was detected.<DT>Aborts <DD>An abort is an exception that permits neither precise locationof the instruction causing the exception nor restart of the programthat caused the exception. Aborts are used to report severe errors,such as hardware errors and inconsistent or illegal values in systemtables.<PRE>Table 9-1. Interrupt and Exception ID AssignmentsIdentifier Description0 Divide error1 Debug exceptions2 Nonmaskable interrupt3 Breakpoint (one-byte INT 3 instruction)4 Overflow (INTO instruction)5 Bounds check (BOUND instruction)6 Invalid opcode7 Coprocessor not available8 Double fault9 (reserved)10 Invalid TSS11 Segment not present12 Stack exception13 General protection14 Page fault15 (reserved)16 Coprecessor error17-31 (reserved)32-255 Available for external interrupts via INTR pin</PRE><P><HR><P><B>up:</B> <A HREF="c09.htm">Chapter 9 -- Exceptions and Interrupts</A><BR><B>prev:</B> <A HREF="c09.htm">Chapter 9 -- Exceptions and Interrupts</A><BR><B>next:</B> <A HREF="s09_02.htm">9.2 Enabling and Disabling Interrupts</A></BODY>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -