Sistemas Digitales y Perifericos
Sistemas Digitales y Perifericos
Sistemas Digitales y Perifericos
Nombre de la Licenciatura
Ingeniería en Sistemas Computacionales
Matrícula
000004626
Nombre de la Tarea
Tarea 5
Interrupción
Unidad #
Unidad 4 Elementos para el manejo de periféricos
Fecha
09/06/2016
Unidad #: 4 Elementos para el manejo de periféricos
Sistemas Digitales y Periféricos
DESARROLLO
Interrupciones
Cuando se da una interrupción por hardware, es por que se ha producido una señal eléctrica causada por
algún dispositivo físico del equipo, siendo este mismo un suceso que es externo al procesador, este cambia el
flujo normal de ejecución y se convierte en un evento asíncrono. Dicha señal hace un informe al CPU de que
dicho dispositivo requiere de su atención.
Gracias a esta señal el CPU detendrá el proceso que está ejecutando para que la interrupción sea atendida.
Una vez terminada la interrupción, el CPU reanudara la ejecución desde donde fue interrumpida, ejecutando
el proceso que se detuvo originalmente u otro proceso.
La subrutina es un proceso que sucede cuando el CPU sólo puede ejecutar una instrucción cada ciclo de
máquina, la diferencia de una subrutina con un sistema con interrupciones, es que la interrupción no se
genera con una instrucción CALL, sino en respuesta a una llamada generada por hardware o por software. Al
programa que se ejecuta al generarse una interrupción se denomina Rutina de Atención a interrupción (ISR).
Cuando hay una interrupción el programa principal se detiene y “salta” a atender la llamada a interrupción
(subrutina).
2
Unidad #: 4 Elementos para el manejo de periféricos
Sistemas Digitales y Periféricos
¿Cuáles son las diferencias básicas entre una bifurcación, una llamada a subrutina
y una interrupción de programa?
Subrutina: a diferencia de una bifurcación una llamada a subrutina almacena en la Pila del PC la
dirección de retorno, por ello esta dirección está disponible cuando más tarde se ejecuta la instrucción
de retorno de subrutina, esto da lugar a que el procesador salte a la dirección almacenada en la cima
de la Pila del PC.
.
Las interrupciones de programa o software: estas son provocadas usando una función especial del
lenguaje, tienen como objetivo que el CPU ejecute algún tipo de función, al terminar de ejecutarse
esta función, se seguirá ejecutando el programa que provocó la interrupción. Estas son principalmente
subrutinas de la BIOS o el DOS que pueden ser llamadas por un programa, su función es
controlar el hardware, servir de contacto entre los programas y las funciones del BIOS y del DOS.
Este tipo de interrupciones podemos separarlas en dos categorías: las interrupciones DOS y las del BIOS.
La diferencia es que las del sistema operativo son más fáciles de usar pero también más lentas ya que hacen
uso del BIOS, en cambio las interrupciones del BIOS son más rápidas pero tienen la desventaja que al ser
parte del hardware son muy específicas y pueden variar dependiendo la marca del fabricante del circuito.
3
Unidad #: 4 Elementos para el manejo de periféricos
Sistemas Digitales y Periféricos
Externas: Son provocadas por condiciones externas al programa en ejecución, por ejemplo Interrupción de
reloj, Comunicación entre operador y sistema,
IRQ 8;
Se produce con una frecuencia de 18,2 veces por segundo. Hay un pulso cada 55 milisegundos.
IRQ 9:
Generada al pulsar o soltar una tecla.
IRQ A:
Retraso vertical en EGA/VGA
IRQ B:
Se requiere servicio COM2 o COM4
IRQ C:
Se requiere servicio COM1 o COM3
Internas:
INT 1
Paso a paso. Se produce tras cada instrucción cuando el procesador está en modo traza (utilizado para la
depuración de programas).
INT 2
Interrupción no enmascarable. Tiene prioridad absoluta y se produce incluso aunque estén inhibidas las
interrupciones para indicar un hecho muy urgente.
4
Unidad #: 4 Elementos para el manejo de periféricos
Sistemas Digitales y Periféricos
INT 3
Utilizada para poner puntos de ruptura en la depuración de programas.
INT 4
Desbordamiento. Se dispara cuando se ejecuta un INTO y había desbordamiento.
Si no hay desbordamiento INTO equivale a NOP.
INT 0
Error de división, generada automáticamente cuando el cociente no cabe en el registro o el divisor es cero.
Sólo puede ser generada mediante DIV o IDIV.
El 8088/8086 guardan en la pila la sentencia siguiente a la que causó la excepción, mientras que el 286 y
superiores guardan la sentencia que la generó
BIBLIOGRAFIA
Fundamentos de sistemas digitales (Floyd, 2009).
http://aulavirtual.utel.edu.mx/lib/ebook_pearson.php?id_ebook_pearson=175
5
Unidad #: 4 Elementos para el manejo de periféricos
Sistemas Digitales y Periféricos