A Tabela de Vetores de Interrupção (IVT) no 8086 reside no endereço físico 00000h–003FFh (primeiros 1 KB). Contém 256 entradas, cada uma 4 bytes (ponteiro far segment:offset) apontando para uma Rotina de Serviço de Interrupção (ISR).
Layout
- 00h–1Fh (0–31): Reservado para exceções da CPU (erro divisão, NMI, breakpoint, overflow, etc.).
- 20h–FFh (32–255): Disponível para hardware (IRQ0–IRQ15 via PIC remap) e interrupções de software (INT n).
Sequência de Interrupção
- Evento externo/interno dispara interrupção.
- CPU empilha FLAGS, CS, IP.
- IF & TF limpos (desabilita interrupções mascaráveis, single-step).
- CPU busca vetor de 4 bytes da IVT (n × 4).
- Carrega CS:IP do vetor → salta para ISR.
- ISR executa, termina com IRET (desempilha IP, CS, FLAGS).
A IVT permite despacho rápido e determinístico — crítico para apps DOS/embarcados real-time. OSes em modo protegido (Linux, Windows) a substituem pela IDT (Interrupt Descriptor Table).