1 <!DOCTYPE HTML PUBLIC
"-//IETF//DTD HTML 2.0//EN">
4 <TITLE>80386 Programmer's Reference Manual -- Chapter
09</TITLE>
7 <B>up:
</B> <A HREF=
"toc.htm">
8 Table of Contents
</A><BR>
9 <B>prev:
</B> <A HREF=
"s08_03.htm">8.3 Protection and I/O
</A><BR>
10 <B>next:
</B> <A HREF=
"s09_01.htm">9.1 Identifying Interrupts
</A>
14 <H1>Chapter
9 Exceptions and Interrupts
</H1>
16 Interrupts and exceptions are special kinds of control transfer; they work
17 somewhat like unprogrammed
18 <A HREF=
"CALL.htm">CALL
</A>s. They alter the normal program flow to
19 handle external events or to report errors or exceptional conditions. The
20 difference between interrupts and exceptions is that interrupts are used to
21 handle asynchronous events external to the processor, but exceptions handle
22 conditions detected by the processor itself in the course of executing
25 There are two sources for external interrupts and two sources for
30 <LI>Maskable interrupts, which are signalled via the INTR pin.
32 <LI>Nonmaskable interrupts, which are signalled via the NMI
33 (Non-Maskable Interrupt) pin.
37 <LI>Processor detected. These are further classified as faults, traps,
40 <LI>Programmed. The instructions
41 <A HREF=
"INT.htm">INTO
</A>,
42 <A HREF=
"INT.htm">INT
</A> 3,
43 <A HREF=
"INT.htm">INT n
</A>, and
44 <A HREF=
"BOUND.htm">BOUND
</A> can
45 trigger exceptions. These instructions are often called
"software
46 interrupts", but the processor handles them as exceptions.
49 This chapter explains the features that the
80386 offers for controlling
50 and responding to interrupts when it is executing in protected mode.
52 <A HREF=
"s09_01.htm">9.1 Identifying Interrupts
</A><BR>
53 <A HREF=
"s09_02.htm">9.2 Enabling and Disabling Interrupts
</A><BR>
55 9.3 Priority Among Simultaneous Interrupts and Exceptions
</A><BR>
56 <A HREF=
"s09_04.htm">9.4 Interrupt Descriptor Table
</A><BR>
57 <A HREF=
"s09_05.htm">9.5 IDT Descriptors
</A><BR>
58 <A HREF=
"s09_06.htm">9.6 Interrupt Tasks and Interrupt Procedures
</A><BR>
59 <A HREF=
"s09_07.htm">9.7 Error Code
</A><BR>
60 <A HREF=
"s09_08.htm">9.8 Exception Conditions
</A><BR>
61 <A HREF=
"s09_09.htm">9.9 Exception Summary
</A><BR>
62 <A HREF=
"s09_10.htm">9.10 Error Code Summary
</A>
66 <B>up:
</B> <A HREF=
"toc.htm">
67 Table of Contents
</A><BR>
68 <B>prev:
</B> <A HREF=
"s08_03.htm">8.3 Protection and I/O
</A><BR>
69 <B>next:
</B> <A HREF=
"s09_01.htm">9.1 Identifying Interrupts
</A>