Issuu on Google+

Grupo de Arquitectura de Computadores y Diseño Lógico. UEX, 1997. http://atc.unex.es/gacdl Tabla de interrupciones Germán Galeano Gil. Juan A. Gómez Puildo

Tabla de interrupciones Las principales interrupciones del 8086/8088 son las siguientes: Interrupción Uso Hex Decimal 00h 0 Generada por la CPU cuando se intenta hacer una división por cero 01h 1 Utilizada par ir paso a paso por los programas (como DEBUG) 02h 2 Interrupción no enmascarable 03h 3 Utilizada para establecer puntos de ruptura en programas (igual que con DEBUG) 04h 4 Generada cuando operaciones aritméticas dan operaciones de desbordamientos 05h 5 Invoca la rutina de servicio de imprimir pantalla de la ROM BIOS 06h 6 Reservada para DOS 07h 7 Reservada para DOS 08h 8 Generada por el tic-tac del reloj del hardware 09h 9 Generada por acción del teclado 0Ah a 10 a Reservadas para BIOS 0Dh 13 0Eh 14 Señala atención al diskette (por ejemplo, para señalar operación completada) 0Fh 15 Utilizada para controlar la impresora 10h 16 Invoca servicios de vídeo de la ROM BIOS 11h 17 Invoca el servicio de lista de equipamiento de ROM BIOS 12h 18 Invoca servicio de tamaño de memoria de la ROM BIOS 13h 19 Invoca servicios de disco de la ROM BIOS 14h 20 Invoca servicios de comunicaciones de la ROM BIOS 15h 21 Invoca servicios del sistema de la ROM BIOS 16h 22 Invoca los servicios estándar del teclado de la ROM BIOS 17h 23 Invoca los servicios de la impresora de la ROM BIOS 18h 24 Activa el lenguaje BASIC de la ROM 19h 25 Invoca la rutina cargadora de la secuencia de arranque de la ROM BIOS (invocarla equivale a hacer un RESET) 1Ah 26 Invoca los servicios de hora y fecha de la ROM BIOS 1Bh 27 Interrupción de la ROM BIOS para Ctrl-Break 1Ch 28 Interrupción generada con cada pulso de reloj 1Dh 29 Apunta a la tabla de parámetros de control del vídeo 1Eh 30 Apunta a la tabla de parámetros de la unidad de disco 1Fh 31 Apunta a los caracteres gráficos del CGA 20h 32 Invoca al servicio de terminación de programa del DOS 21h 33 Invoca a todos los servicios de llamada a función DOS 22h 34 Dirección de la rutina de terminación del programa del DOS 23h 35 Dirección de la rutina de break del teclado del DOS 24h 36 Dirección de la rutina de errores críticos del DOS 25h 37 Invoca al servicio de lectura absoluta del DOS 26h 38 Invoca al servicio de escritura absoluta del DOS 27h 39 Termina un programa, quedando residente 28h 40 Dos Idle 29h 41 Interno DOS. PutChar Rápido 2Ah a 42 a 46 Reservado para DOS 2Dh 2Eh 48 Ejecutar comando 2Fh 47 Interrupción múltiple del DOS 30h a 48 a 50 Reservado para DOS

1


Grupo de Arquitectura de Computadores y Diseño Lógico. UEX, 1997. http://atc.unex.es/gacdl Tabla de interrupciones Germán Galeano Gil. Juan A. Gómez Puildo

32h 33h 34h a 3Eh 3Fh 40h 41h 42h 43h 44h 45h 46h 47h a 49h 4Ah 4Bh a 5Fh 60h a 66h 67h 68h a 69h 70h 71h a 74h 75h 76h a 79h 7Ah 7Bh a 7Fh 80h a F0h F1h a FFh

51 52 a 62

Funciones del driver del ratón Reservado para DOS

63 64 65 66 67 68 69 70 71 a 73 74 75

Gestor Overlay Reasignación Disquete BIOS Apunta a la tabla de parámetros del disco duro Gestor Vídeo Reasignado Apunta a los caracteres gráficos de vídeo (EGA, PS/2) API red Novell Reservado Parámetros del disco duro Reservadas para BIOS

A 102 103 104 a 105 106 107 a 110 111 112 a 114 115 116 a 120 121 a

Reservadas a programas

A 255

Alarma usuario Reservadas para BIOS

Invoca al gestor de memoria expandida LIM Reservadas para BIOS Reloj tiempo real Reservadas para BIOS Redirigido a interrupción NMI Reservadas Software Novell (API) No usadas Reservado para BASIC Reservadas a programas

Servicios de la interrupción 10h (video) Servicio 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 FE

Descripción Asignar modo de video Asignar tipo de cursor Situar posicion del cursor Leer posicion del cursor Leer posicion de lapiz optico Seleccionar pagina de pantalla Inicializar ventana o desplazar su contenido en sentido ascendente Inicializar ventana o desplazar su contenido en sentido descendente Obtener atributo y caracter en el cursor Escribir atributo y caracter en el cursor Escribir unicamente caracter en el cursor Asignar paleta de colores Mostrar pixel grafico Leer pixel grafico Mostrar texto en modo teletipo Obtener modo de pantalla actual Mostrar registros de paleta Reservada Reservada Escribir cadena Obtener buffer del video

2


Grupo de Arquitectura de Computadores y Diseño Lógico. UEX, 1997. http://atc.unex.es/gacdl Tabla de interrupciones Germán Galeano Gil. Juan A. Gómez Puildo

FF

Actualizar buffer del video

Servicios de la interrupción 15h (ROM BIOS) Servicio 21 84 86 88 c0 c1

Descripción Event Wait Leer Joystick Delay (CX DX) Tamaño mem.extend. Parámentros sistema Datos BIOS extendida

Servicios de la interrupción 16h (teclado) Servicio 00 01 02 03 05 10 11 12

Descripción Leer caracter teclado Comprobar buffer teclado Obtener byte estado teclado Definir velocidad teclado Colocar en buffer teclado Leer caracter ampliado Comprobar buffer ampliado Obtener byte t.ampliado

Servicios de la interrupción 21h (sistema) Servicio 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17

Descripción Terminacion de Programa Entrada de caracteres con eco Salida de caracteres Entrada auxiliar Salida auxiliar Salida de impresora E/S directa de consola Entrada de caracteres no filtrados sin eco Entrada de caracteres sin eco Salida de una cadena de caracteres Entrada con buffer Obtener status de entrada Borrar buffer de entrada y aceptar entrada posterior Reset de disco Asignar unidad de disco po defecto Abrir fichero Cerrar fichero Buscar primera coincidencia Buscar siguiente coincidencia Borrar fichero Lectura secuencial Escritura secuencial Crear o truncar Cambiar nombre de fichero

3


Grupo de Arquitectura de Computadores y Diseño Lógico. UEX, 1997. http://atc.unex.es/gacdl Tabla de interrupciones Germán Galeano Gil. Juan A. Gómez Puildo

18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57

Reservado Obtener unidad de disco por defecto Asignar direccion de la zona de transferencia de disco Obtener informacion de ubicacion para unidad por defecto Obtener informacion de ubicacion para unidad especificada Reservado Reservado Reservado Reservado Lectura aleatoria Escritura aleatoria Obtener tamaño de fichero Asignar numero de registro aleatorio Asignar vector de interrupcion Crear prefijo del segmento de programa Lectura aleatoria de bloque Escritura aleatoria de bloque Analisis (transcripcion) de nombre de fichero Obtener fecha del sistema Asignar fecha al sistema Obtener hora del sistema Asignar hora al sistema Activar flag de verificacion Obtener direccion de la zona de transferencia de disco Obtener numero de version MS-DOS Terminar y permanecer residente Reservado Obtener o activar flag de Ctrl-Break Reservado Obtener vector de interrupcion Obtener espacio libre en disco Reservado Obtener o asignar pais Crear subdirectorio Borrar subdirectorio Asignar directorio actual Crear o truncar fichero Abrir fichero Cerrar fichero Leer fichero o dispositivo Escribir en fichero o dispositivo Borrar fichero Desplazar puntero del fichero Obtener o asignar atributos del fichero Control de gestor de dispositivo (IOCTL) Duplicar handle Duplicacion forzada de handle Obtener directorio actual Asignar memoria Liberar memoria Modificar Asignacion de memoria Ejecutar programa Terminar con codigo de retorno Obtener codigo de retorno Buscar primera coincidencia Buscar siguiente coincidencia Reservado Reservado Reservado Reservado Obtener flag de verificacion Reservado Cambiar nombre de fichero Obtener o cambiar fecha y hora de fichero

4


Grupo de Arquitectura de Computadores y Dise帽o L贸gico. UEX, 1997. http://atc.unex.es/gacdl Tabla de interrupciones Germ谩n Galeano Gil. Juan A. G贸mez Puildo

58 59 5A 5B 5C 5D 5E 5F 60 61 62 63

Obtener o asignar estrategia de ubicacion Obtener informacion extendida de error Crear fichero temporal Crear nuevo fichero Bloquear registros Reservado Obtener nombre de la maquina/instalacion de impresora Asignar entrada de lista Reservado Reservado Obtener direccion del prefijo del segmento de programa Obtener tabla de encabezado de bytes

5


Interrupciones