Vous êtes sur la page 1sur 2

LINK:

http://atc2.aut.uah.es/~avicente/asignaturas/ects/pdf/ects_t3.pdf

Universidad de Alcal I. Telecomunicacin


Laboratorio de Estructura de Computadores

1.4. INTERRUPCIONES
El 8086 puede tratar 256 tipos diferentes de interrupciones, que se numeran
en hexadecimal entre 0x00 y 0xFF y, segn el modo en el que se producen,
pueden ser internas o externas. Las interrupciones externas son aquellas
producidas por seales elctricas procedentes del exterior del
microprocesador, normalmente producidas por los perifricos. Las
interrupciones internas son las producidas por la propia CPU en la ejecucin
de un programa (por ejemplo ante el intento de divisin por cero) o por una
instruccin especfica (son las interrupciones programadas que se producen
cuando se ejecuta la instruccin INT).
Para poder realizar la gestin de todas las interrupciones, los primeros 1024
bytes de memoria estn reservadas para los vectores de interrupcin que
almacenan los valores que se deben cargar en los registros IP y CS, para
ejecutar la rutina de atencin a la interrupcin correspondiente (la
interrupcin N tendr su vector de interrupcin a partir del byte de direccin
Nx4).
El 8086 dispone de dos lneas de peticin de interrupcin hardware:
La lnea NMI, que provoca una interrupcin no enmascarable que es
atendida siempre mediante la rutina de vector 2.
La lnea INTR, que provoca una interrupcin enmascarable, que solo ser
atendida si el flag F est a '1', recibiendo en las 8 lneas de menor peso del
bus de datos el nmero del vector de interrupcin. Esta lnea es controlada
por el circuito PIC (Programmable Interrupt Controller) que se encarga
tambin de situar el nmero de interrupcin en el bus de datos. La propia
CPU del 8086 es capaz de generar automticamente tres interrupciones
internas:
La interrupcin 0 que se genera cuando se produce un intento de divisin
por cero.
La interrupcin 1 que se genera despus de ejecutarse cada instruccin si
el flag T del registro de estado est a '1', lo que permite la ejecucin paso a
paso y la depuracin de programas.
La interrupcin 4 es la interrupcin de overflow y se genera cuando se
produce una operacin aritmtica con desbordamiento.
Mediante la instruccin INT num se genera la interrupcin representada por
num, que ser atendida siempre, independientemente del estado del flag I.
El vector correspondiente a la interrupcin provocada proporcionar la

direccin de comienzo de la rutina o el programa de atencin a esa


interrupcin, que finalizar siempre con la instruccin IRET