miércoles, 10 de febrero de 2010

Interrupciones

¿QUE ES UNA INTERRUPCION?

Lo que nos interesa saber de una interrupción es que es un fragmento de código que podemos encontrar en la memoria y que realiza una función determinada. Esta función puede ser cambiar el modo de vídeo, capturar la pulsación de una tecla, escribir o leer un archivo en disco, comprobar el cliqueo del ratón, etc.
Todas estas cosas se podrían hacer sin utilizar las interrupciones, pero las usamos para complicar menos el código de nuestros programas y hacerlos mas simples.
Casi todas las interrupciones tienen varias funciones que pueden realizar. Por ejemplo, la interrupción 33h hace todas las funciones referentes al manejo del ratón. A la mayoría de ellas hay que llamarlas pasándoles una serie de parámetros que, entre otras cosas, determinarán la subfunción que queremos ejecutar.

LISTA RESUMIDA DE INTERRUPCIONES

Int 00h - CPU. Error de división o división por cero.
Int 01h - CPU. Ejecución paso a paso.
Int 02h - Interrupciones no enmascarables NMI.
Int 03h - CPU. Punto de prueba o ruptura (breakpoint).
Int 04h - CPU. Desbordamiento (INTO detectó overflow).
Int 05h - Imprimir pantalla.

Cuando pulsamos la tecla imprimir pantalla en modo DOS, se ejecuta esta interrupción.

Int 06h - CPU. Reservada (código de operación invalido).
Int 07h - CPU. Reservada comprueba si existe coprocesador matemático.
Int 08h - IRQ 0. Contador del sistema. Reloj interno.
Int 09h - IRQ 1. Teclado.
Int 0Ah - IRQ 2. LPT2. Puerto paralelo 2.
Int 0Bh - IRQ 3. COM2. Puerto de comunicaciones serie 2.
Int 0Ch - IRQ 4. COM1. Puerto de comunicaciones serie 1.
Int 0Dh - IRQ 5. disco duro "Fixed disk".
Int 0Eh - IRQ 6.
Controlador de discos (floppy).
Int 0Fh - IRQ 7 LPT1. Puerto paralelo 1.
Int 10h - BIOS VIDEO. Funciones de vídeo. FUNCIONES
Int 11h - BIOS EQUIPO. Obtiene una lista del equipo.
Int 12h - BIOS. Tamaño de memoria. Memoria disponible.
Int 13h - BIOS DISCO. Maneja todo lo relativo a lectura, escritura, formateo, etc. FUNCIONES
Int 14h - BIOS. Funciones de puertos serie. Comunicaciones asincronas. FUNCIONES
Int 15h - BIOS. Extensiones entrada/salida opciones de cassette (obsoleta).
Int 16h - BIOS. Funciones de teclado. FUNCIONES
Int 17h - BIOS - Funciones de impresora.
FUNCIONES
Int 18h - rom del Básic. "Diskless boot hook" (obsoleta).
Int 19h - "Bootstrap loader".
Utilizada para arrancar el S/O.
Int 1Ah - Servicios reloj tiempo real.
FUNCIONES
Int 1Bh. - Break teclado.
Int 1Ch - Timer tick usuario.
Int 1Dh - Parámetros del bios.
Int 1Eh - Parámetros disquete.
Int 1Fh. - Caracteres gráficos.
Int 20h - Terminar programa MS-DOS.

Int 21h - MS-DOS. Aquí hay una gran variedad de funciones. Aunque muchas de las funciones de la interrupción 21h pueden ser realizadas a través de otras interrupciones, su objetivo mas bien consiste en simplificar el uso de estas. FUNCIONES

Int 22h - Dirección terminar. Donde se devuelve el control cuando acaba un programa.
Int 23h - MS-DOS. Dirección de tratamiento Ctrl-C CONTROL-BREAK.
Int 24h - MS-DOS. Tratamiento de errores críticos.
Int 25h - MS-DOS. Lectura directa de disco.
Int 26h - MS-DOS. Escritura directa de disco.
Int 27h - MS-DOS. Terminar y permanecer residente (TSR).
Int 28h - MS-DOS. "Dos idle interrupt".
Int 29h - MS-DOS. Salida rápida de consola.
Int 2Ah - Funciones de redes.
Int 2Bh - MS-DOS. Reservado.
Int 2Ch - MS-DOS. Reservado.
Int 2Dh - MS-DOS. Reservado.
Int 2Eh - Ejecutar comando.
Int 2Fh - MS-DOS. Multiplex. Funciones internas, CD-ROM y Windows.
Desde Int 30h hasta Int 32h - Reservado para DOS.
Int 33h - Funciones del ratón. Para poder utilizarlo, necesita que el driver del mouse se encuentre en memoria. FUNCIONES
Desde Int 34h hasta Int 3Dh - Reservado para DOS.
Int 3Fh - Gestor Overlay.
Int 40h - Reasignación disquete.
Int 41h - Parámetros del disco duro.
Int 42h - Gestor vídeo reasignado.
Int 43h - Reservado Bios.
Int 44h - API Red Novell.
Int 45h - Reservado Bios.
Int 46h - Parámetros disco duro.
Desde Int 47h hasta Int 49h - Reservado bios.
Int 4Ah - Alarma de usuario.
Desde Int 4Bh hasta Int 4Eh - Reservado bios.
Int 4Fh - Reservado zona sistema DOS.
Desde Int 50h hasta Int 5Fh - Reservado bios.
Desde Int 60h hasta Int 66h - Reservado programas.
Int 67h - Memoria expandida EMS.
Desde Int 68h hasta Int 6Fh - Reservado bios.
Int 70h - Reloj tiempo real.
Desde Int 71h hasta Int 73h - Reservado bios.
Int 74h - Reservado zona sistema DOS.
Int 75h - Redirigido a Interrupción NMI.
Int 76h - Reservado zona sistema DOS.
Int 77h - Reservado bios.
Desde Int 78h hasta Int 7Fh - No usadas.
Desde Int 80h hasta Int 85h - Reservado para Básic.
Desde Int 86h hasta Int F0h - Reservado para interprete de Básic.
Desde Int F0h hasta Int FFh - Reservado programas.

No hay comentarios:

Publicar un comentario