Upload
mateo-morano
View
218
Download
1
Tags:
Embed Size (px)
Citation preview
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Interrupciones en la IBM PCInterrupciones en la IBM PC
INTERRUPCIONES EN LA IBM PCARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
POLLING (SONDEO)POLLING (SONDEO)
INTERRUPCIONES EN LA IBM PCARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONESINTERRUPCIONES
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
TIPOS DE INTERRUPCIONES
EN LA IBM PC
TIPOS DE INTERRUPCIONES
EN LA IBM PC
Internas o
excepciones
Internas o
excepcionesExternas
o de hardware
Externas
o de hardwareSoftware Software
No Enmascarables
NMI
No Enmascarables
NMI
Enmascarables
INTR
Enmascarables
INTR
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
La tabla de vectores de interrupción contiene las direcciones de las rutinas de servicio de las interrupciones que realizan las funciones asociadas con las interrupciones.
Las rutinas del POST del BIOS inicializa la tabla de vectores, al momento de “bootear”, con las direcciones de las rutinas suministradas por el código en la ROM BIOS y después el DOS y nuestros programas de aplicación agregan sus respectivos vectores a los vectores de esta tabla, conforme son cargados..
INTERRUPCIONES EN LA IBM PC
TABLA DE VECTORES DE INTERRUPCIÓN
CSLCSL
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
CSHCSH
IPLIPL
IPhIPh 0000
3FFF
Tabla de vectores de interrupción
Se ubica en 1024 localidades de RAM en la parte más baja de la memoria que permiten 256 vectores de interrupción de 4 bytes cada uno.
Un vector de interrupción está formado por la dirección de inicio de la rutina de servicio de la interrupción ISR ( 2 bytes para CS y 2 bytes para IP)
Vector 00001
0002
0003
LA TABLA DE VECTORES DE INTERRUPCIÓN
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
LA TABLA DE VECTORES DE INTERRUPCIÓN
Cada vector: 4 bytes
Dirección del vector: 0: INT x 4
La tabla ocupa 256x4 = 1024 bytes (1 Kbyte)
Reservadas por INTEL (modo protegido)
Error de división por 0
Ejecución paso a paso
NMI (No enmascarable)
Instrucción INT
Desbordamiento (INTO)
Utilizables por el usuario
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Cuando una interrupción ocurre, independientemente de la fuente, el 80x86 realiza lo siguinte:
1) El CPU carga (push) el registro de banderas al STACK
2) La CPU carga al STACK la dirección de retorno lejano ( segmento:offset ) primero el valor del segmento.
3) La CPU determina la causa de la interrupción ( esto es, lee el número o tipo de la interrupción) y toma los 4 bytes del vector de interrupción de la
dirección 0000:vector*4.
4) La CPU transfiere el control a la rutina especificada por la tabla de vectores de interrupción.
Después de completados estos pasos,la rutina de servicio de la interrupción toma el control. Cuando la interrupción desea regresar el control , debe ejecutar una instrucción IRET ( Interrupt Return). El retorno de una interrupción recupera del STACK la dirección de retorno lejano y las banderas.
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Operación de las instrucciones INT e IRET
Int16H
00
2EEB
04001509
0915:00020915:00030915:0004
F000:EB2EF000:E82F
IRET
0000:0000
F0
0000:00580000:00590000:005A0000:005B
FLAGS
PROGRAMA INVOCANTESTACK
TABLA DE VECTOR DE INTERRUPCIONES
RUTINA DE LA ROM BIOS
1
2
3
4
IRET produce un retorno de la rutina de interrupción al programa invocante,recuperando del STACK la dirección CS:IP de la instruccón que quedó pendiente
INT 16h produce un FAR CALL a la dirección contenida en el vector de la interrupción 16h, la dirección de retorno se carga al STACK
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Int. Num.Address in I.V.T.
Description
0 00-03 CPU divide by zero
1 04-07 Debug single step
2 08-0B Non Maskable Interrupt (NMI input on processor)
3 0C-0F Debug breakpoints
4 10-13 Arithmetic overflow
5 14-17 BIOS provided Print Screen routine
6 18-1B Reserved
7 1C-1F Reserved
8 20-23 IRQ0, Time of day hardware services
9 24-27 IRQ1, Keyboard Interface
A 28-2B IRQ2, ISA Bus cascade services for second 8259
B 2C-2F IRQ3, Com 2 hardware
C 30-33 IRQ4, Com1 hardware
INTERRUPCIONES EN LA IBM PC
DESCRIPCIÓN DE LA TABLA DE VECTORES DE INTERRUPCIÓN Y SU TIPO
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Time of day services68-6B1A
Bootstrap loader64-6719
Points to basic interpreter in a "real" IBM PC60-6318
Printer I/O routines5C-5F17
Keyboard I/O routines58-5B16
PC used for Cassette tape services54-5715
Serial port I/O routines50-5314
Floppy I/O routines4C-4F13
Memory size determination48-4B12
Equipment check44-4711
Video services, see note 140-4310
IRQ7, LPT1, Parallel port hardware3C-3F F
IRQ6, Floppy Disk adaptor38-3B E
IRQ5, LPT2, Parallel port hardware (Hard Disk on XT)34-37 D
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Read logical sectors94-9725
Critical error handler90-9324
Ctrl-Break exit address8C-8B23
Terminate address88-8B22
All DOS services available through this Interrupt84-8721
Program termination (obsolete)80-8320
Video graphics7C-7F1F
Disk parameters78-7B1E
Video parameters74-771D
Timer tick (provides 18.2 ticks per second)70-731C
Services Ctrl-Break service6C-6F1B
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Used for EMS functions19C-19F67
Reserved for User programs180-183 to 198-19B60 to 66
Reserved for BIOS17C-17F5F
Reserved for BIOS178-17B5E
Reserved for BIOS174-1775D
Reserved for BIOS16C-16F5B
Reserved for BIOS168-16B5A
Reserved for BIOS148-14B to 164-16752 to 59
Mouse functions144-14751
Reserved for BIOS140-14350
Reserved for BIOS100-103 to 13C-13F40 to 4F
Reserved for DOSA0-A3 to FC-FF28 to 3F
Terminate and stay resident routines (obsolete)9C-9F27
Write logical sectors98-9B26
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Unused3C4-3C7 to 3C4-3FFF1 to FF
Used by basic218-21B to 3C0-3C386 to F0
Reserved for basic200-203 to 214-21780 to 85
Unused1E0-1E3 to 1FC-1FF78 to 7F
IRQ15, (available hardware interrupt)1DC-1DF77
IRQ14, ISA bus hard disk controller1D8-1DB76
IRQ13, maths co-processor1D4-1D775
IRQ12 (available hardware interrupt)1D0-1D374
IRQ11 (available hardware interrupt)1CC-1CF73
IRQ10 (available hardware interrupt)1C8-1CB72
IRQ9, takes the place of IRQ21C4-1C771
IRQ8, ISA bus Real time clock1C0-1C370
Unused1A0-1A3 to 1BC-1BF68 to 6F
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
La familia de microprocesadores 8086 pueden reconocer 256 diferentes interrupciones, cada una con un código único de TIPO (número) con el que el microprocesador lo identifica.
El procesador usa este código de TIPO ( un número entre 00 y FF en hexadecimal ) para apuntar a una localidad dentro de la tabla de vectores de interrupción.
INTERRUPCIONES EN LA IBM PC
EN GENERAL:
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Termina la instrucción
en curso
Termina la instrucción
en curso
Interrupción interna
Interrupción interna
Ejecuta la Siguiente
instrucción
Ejecuta la Siguiente
instrucción
NMINMI
INTRINTR
TFTF
IFIF Interrupción reconocida
Interrupción reconocida
Lee código de tipo
Lee código de tipo
Push flagsPush flags
Let temp=TFLet temp=TF
Clear IF&TFClear IF&TF
Push CS&IPPush CS&IP
NMINMI
TEMPTEMP
Ejecuta ISREjecuta ISR
Pop IP&CSPop IP&CS
Pop flagsPop flags
Continua con el programa
Continua con el programa
SI
SI
SI
SI
1
1
1
0
0
Call ISRCall ISR
INTERRUPCIONES EN LA IBM PC
La CPU no puede dejar una instrucción a medio ejecutar, sensa las interrupciones en el último ciclo de máquina de la instrucción en curso y responde al finalizar la instrucción en curso
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
•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. •INT 1: paso a paso, se produce tras cada instrucción cuando el procesador está en
modo traza (utilizada en depuración de programas). •INT 2: interrupción no enmascarable, tiene prioridad absoluta y se produce incluso
aunque estén inhibidas las interrupciones (con CLI) para indicar un hecho muy urgente (fallo en la alimentación o error de paridad en la memoria).
INTERRUPCIONES INTERNAS O EXCEPCIONES:INTERRUPCIONES INTERNAS O EXCEPCIONES:
Las genera la propia CPU cuando se produce una situación anormal o cuando llega el caso. Por desgracia, IBM se saltó olímpicamente la especificación de Intel que reserva las interrupciones 0-31 para el procesador.
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
•INT 3: utilizada para poner puntos de ruptura en la depuración de programas, debido a que es una instrucción de un solo byte muy cómoda de utilizar.
•INT 4: desbordamiento, se dispara cuando se ejecuta un INTO y había desbordamiento. •INT 5: rango excedido en la instrucción BOUND (sólo 286 y superiores). Ha sido
incorrectamente empleada por IBM para volcar la pantalla por impresora. •INT 6: código de operación inválido (sólo a partir del 286). Se produce al ejecutar
una instrucción indefinida, en la pila se almacena el CS:IP de la instrucción ilegal.
•INT 7: dispositivo no disponible (sólo a partir del 286).
INTERRUPCIONES INTERNAS O EXCEPCIONES:INTERRUPCIONES INTERNAS O EXCEPCIONES:
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Producidas por el propio programa usando la instrucción INT para invocar ciertas subrutinas.
La BIOS y el DOS utilizan algunas interrupciones a las que se puede llamar con determinados
valores en los registros para que realicen ciertos servicios.
INTERRUPCIONES DE SOFTWARE:INTERRUPCIONES DE SOFTWARE:
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EXTERNAS O DE HARDWARE:INTERRUPCIONES EXTERNAS O DE HARDWARE:
INTERRUPCIONES EN LA IBM PC
• Son generadas por dispositivos periféricos externo a través de una señal eléctrica.
• Se solicita la atención de la CPU aplicándole la señal a sus terminales INT y NMI
• Las Enmascarables por INT : activa a nivel alto
• Las No Enmacarables por NMI: activa en flanco de subida
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
La CPU genera dos impulsos de reconocimiento de interrupción
INTR
NMI
INTA
CPU
INTERRUPCIONES EXTERNAS O DE HARDWARE:INTERRUPCIONES EXTERNAS O DE HARDWARE:
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EXTERNAS O DE HARDWARE:INTERRUPCIONES EXTERNAS O DE HARDWARE:
INTERRUPCIONES EN LA IBM PC
INTERRUPCIONES ENMASCARABLES
SE HABILITAN O DESHABILITAN POR PROGRAMA:
Con la instrucción SETI se habilitan las interrupciones y pone la bandera IF a 1
Con la instrucción CLI se inhiben todas las posibles interrupciones de este tipo y se pone la bandera IF a 0.
LA CPU RESPONDE AL SER ACEPTADA LA INTERRUPCIÓN, CON UNA SEÑAL EN SU TERMINAL INTA ( INTERRUPT ACNOWLWDGE)
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EXTERNAS O DE HARDWARE:INTERRUPCIONES EXTERNAS O DE HARDWARE:
INTERRUPCIONES EN LA IBM PC
son solicitadas por periféricos externos, a través de un Controlador de interrupciones programable ( Programmable Interrupts Controller : PIC) que se conecta a la terminal INT del procesador, La aceptación o no depende del status de la bandera de interrupciones IF
INTERRUPCIONES ENMASCARABLES:
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
La IBM PC original usó el controlador de interrupciones 8259.Este permitía que se pudieran generen hasta 8 señales de interrupción ( numeradas de 0 a 7). Estas líneas de interrupción son llamadas líneas de “Interrupt Request” ( requerimiento de interrupción) o IRQ´s
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
A partir de la IBM AT se incluyen 2 controladores de interrupción, donde el segundo controlador (ESCLAVO) está conectado en cascada a la línea de interrupción 2 del primer controlador ( MAESTRO) . L a líneas de interrupción del segundo controlador están numeradas de 8 a 15.
Debido a este “cascadeo”, la línea de interrupción 2 no está disponible. Sin embargo ; para compatibilidad con la PC original, la línea de interrrupción 2 es conectada a al línea 9 del segundo controlador ( tal que, si un dispositivo en la PC es configurado para la interrupción 2, en realidad éste usa la interrupción 9)
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
Interrupciones reservadas:
IRQ0 Temporizador (Timer)
IRQ1 Teclado
IRQ8 Reloj de tiempo real
IRQ13 Errores del coprocesador
IRQ14 Controlador de disco duro
IRQ3 Puerto serie COM1
IRQ4 Puerto serie COM2
IRQ6 Controlador de diskette
IRQ7 Puerto paralelo
PIC MAESTRO Dir E/S = 20h, 21h
PIC ESCLAVO Dir E/S = A0h, A1h
Al inicio del sistema se especifica:
PIC MAESTRO INT = IRQ + 8
PIC ESCLAVO INT = IRQ + 70h
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Entradas del controlador programable de interrupciones PIC 8259
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
ESQUEMA INTERNO DE BLOQUES
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
INTERRUPCIONES EN LA IBM PC
El registro de máscara
Permite enmascarar individualmente cada entrada:
1 Prohibe interrupciones por esa línea
0 Permite interrupciones por esa línea
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
INTERRUPCIONES EN LA IBM PC
Proceso de una interrupción en el PIC
1. Un periférico solicita interrupción
2. El PIC solicita interrupción a la CPU (INT)
3. La CPU reconoce la petición con un primer pulso de INTA
4. Se activa el bit correspondiente de ISR y se desactiva en IRR
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
INTERRUPCIONES EN LA IBM PC
5. La CPU envía el segundo pulso de INTA
6. El PIC coloca un puntero de 8 bits en el bus de datos
•El valor del puntero es distinto para cada entrada IRQ
•Es programable
7. A partir de entonces comienza a ejecutarse la rutina de atención
Proceso de una interrupción en el PIC (continuación)
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
INTERRUPCIONES EN LA IBM PC
Fin de interrupción (EOI)
Los bits activos de ISR bloquean futuras peticiones por esa línea
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
INTERRUPCIONES EN LA IBM PC
Deben ponerse a 0 al terminar la rutina de servicio: (EOI)
Formas de poner a 0 el bit de ISR:
1. Programar el modo automático (AEOI)
El bit se pone a 0 automáticamente al colocar el puntero en el bus de datos
2. Enviar al PIC el comando EOI:
No específico : pone a 0 el de más prioridad
Específico: pone a 0 el que se le indica
Generalmente se envía el EOI justo antes del IRET
Fin de interrupción (EOI)
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
El PIC 8259 (“Programmable Interrupt Controller”)
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Los PICs se conectan al sistema a través de Los puertos de E/S 20h/A0h y 21h/A1h.
La primera dirección es la dirección del PIC maestro (IRQ0-IRQ7), la segunda corresponde al PIC esclavo (IRQ8-IRQ15).
La 20h/A0h es una localidad de lectura/escritura a la cual se escriben comandos al PIC y se lee su status, nos referiremos a éste como el registro de comandos o el registro de status.
EL registro de comandos es de sólo escritura y el de status es de sólo lectura . Ellos solo comparten la misma localidad de E/S. Las líneas de READ/WRITE del PIC determina que registro va a accesar el CPU.
EL puerto 21h/A1h es una localidad de lecto/escritura que contiene el registro máscara de interrupción.
INTERRUPCIONES EN LA IBM PC
CONEXIÓN DE LOS CONTROLADORES PROGRAMABLES DE INTERRRUPCIÓN (PIC) 8259 A LA PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
Registro de máscara de Interrupción del PIC
El registro de máscara del PIC es un registro de 8 bits que nos permite habilitar y deshabilitar individualmente las interrupciones de los dispositivos del sistema. Esto es similar a las acciones de las instrucciones CLI y STI, pero sobre un dispositivo
Para deshabilitar la interrupción de algún dispositivo específico, escriba un uno al registro de máscaraPara habilitar la interrupción de algún dispositivo específico, escriba un cero al registro de máscara
INTERRUPCIONES EN LA IBM PC
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
INTERRUPCIONES DEL BIOS
SERVICIO A DISPOSITIVOS PERIFÉRICOS..............(6)
STATUS DEL EQUIPO..................................................(2)
HORA Y FECHA...........................................................(1)
PRINT SCREEN...........................................................(1)
SERVICIOS ESPECIALES............................................(2)
SERVICIO A DISPOSITIVOS PERIFÉRICOS..............(6)
STATUS DEL EQUIPO..................................................(2)
HORA Y FECHA...........................................................(1)
PRINT SCREEN...........................................................(1)
SERVICIOS ESPECIALES............................................(2)
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
INTERRUPCIONES DEL BIOS
SERVICIO A DISPOSITIVOS PERIFÉRICOS:
INT 10H............................................SERVICIO DEL VIDEO
INT 13H............................................SERVICIOS DE DISKETTE
INT 14H............................................COMUNICACIONES
INT 15H............................................SERVICIOS DEL SISTEMA
INT 16H............................................SERVICIOS DEL TECLADO
INT 17H............................................SERVICIOS DE IMPRESORA
SERVICIO A DISPOSITIVOS PERIFÉRICOS:
INT 10H............................................SERVICIO DEL VIDEO
INT 13H............................................SERVICIOS DE DISKETTE
INT 14H............................................COMUNICACIONES
INT 15H............................................SERVICIOS DEL SISTEMA
INT 16H............................................SERVICIOS DEL TECLADO
INT 17H............................................SERVICIOS DE IMPRESORA
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
INTERRUPCIONES DEL BIOS
STATUS DEL EQUIPO:
INT 11H............................................LISTADO DEL EQUIPO
INT 12H............................................TAMAÑO DE MEMORIA
HORA Y FECHA:
INT 1AH............................................HORA Y FECHA
PRINT SCREEN:
INT 5H.............................................IMPRESIÓN DE PANTALLA
INT 18H...........................................ACTIVAR LA BASIC-ROM
SERVICOS ESPECIALES:
INT 19H...........................................ACTIVAR RUTINA DE ARRANQUE CARGADO
STATUS DEL EQUIPO:
INT 11H............................................LISTADO DEL EQUIPO
INT 12H............................................TAMAÑO DE MEMORIA
HORA Y FECHA:
INT 1AH............................................HORA Y FECHA
PRINT SCREEN:
INT 5H.............................................IMPRESIÓN DE PANTALLA
INT 18H...........................................ACTIVAR LA BASIC-ROM
SERVICOS ESPECIALES:
INT 19H...........................................ACTIVAR RUTINA DE ARRANQUE CARGADO
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
Función 02 de la INT 10H del BIOS
Colocación del cursor Colocación del cursor
INT 10H
DEL BIOS
INT 10H
DEL BIOS
AH=02BH=00
DH = renglónColocación
del cursor DL = columna
76 77 78 79
Ejemplo:Colocar al cursor en las posiciones (DL,DH)=(12,40)
MOV AH,02H ;invocar a la función 2 de la INT 10h
MOV BH,00 ;trabajar con la página 0
MOV DH,12 ;cargar el #de columna en DH
MOV DL,40 ;cargar el # de renglón en DL
INT 10H ;Invocar a la rutina del BIOS
Ejemplo:Colocar al cursor en las posiciones (DL,DH)=(12,40)
MOV AH,02H ;invocar a la función 2 de la INT 10h
MOV BH,00 ;trabajar con la página 0
MOV DH,12 ;cargar el #de columna en DH
MOV DL,40 ;cargar el # de renglón en DL
INT 10H ;Invocar a la rutina del BIOS
0
1
2
22
23
24
0123
Renglón 0
Columna 0
Renglón 0
Columna 0
Renglón 0
Columna 79
Renglón 0
Columna 79
Renglón 24
Columna 79
Renglón 24
Columna 79
Renglón 24
Columna 0
Renglón 24
Columna 0
DH
DL
Renglón 12
Columna 40
Renglón 12
Columna 40
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
Función 06 de la INT 10H del BIOS
INT 10H
DEL BIOS
INT 10H
DEL BIOS
AH=06
AL=00
BH=# de atributo
CX=renglón:columna(inicio)
DX=renglón:columna ( final )
Limpiar
la pantalla
00:00
18:4F Dx posición
final
Dx posición
final
Cx posición
inicial
Cx posición
inicial
Limpiar la pantallaLimpiar la pantalla
BH=atributo de la pantalla ejemplo: 7=blanco 1=azul
AL=00; Pantalla completa
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
Atributos de la pantallaAtributos de la pantalla
Cada carácter de la pantalla monocromática tiene su propio atributo:
parpadeante o no
intensificado o no
video normal o inverso.
Cada posición de un carácter en la pantalla (25X80=2000 ) es representado por 2 bytes:
El primero es el ASCII del caracter
El segundo es el byte que contiene el atributo
b7b7 b6b6 b5b5 b4b4 b3b3 b2b2 b1b1 b0b0BH:
Foreground
000=negro
001=azul
010=verde
011=cian
100=rojo
101=magenta
110=café
111=blanco
Intensidad
0= normal
1=intensificado
Background
000=negro
001=azul
010=verde
011=cian
100=rojo
101=magenta
110=café
111=blanco
Parpadeo
0= normal
1=parpadeante
El atributo se carga al registro BH
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
SERVICIOS DE LA INT 14H DEL BIOSMANEJO DEL PUERTO SERIAL
Servicio Descripción __________________________________________
00 Inicializa el puerto serial 01 Envía un carácter 02 Recibe un carácter 03 Lee el status del puerto serie 04 Inicializa el puerto serie extra 05 Control del puerto de comunc.
Servicio Descripción __________________________________________
00 Inicializa el puerto serial 01 Envía un carácter 02 Recibe un carácter 03 Lee el status del puerto serie 04 Inicializa el puerto serie extra 05 Control del puerto de comunc.
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
SERVICIO 00 DE LA INT 14H : INICIALIZACIÓN DEL PUERTO SERIAL
ACTIVA LOS PARAMETROS SIGUIENTES:
_________________________________________
EL BAUDAJE LA PARIDAD EL NÚMERO DE STOPS BITS EL TAMAÑO EN BITS DEL DATO
ACTIVA LOS PARAMETROS SIGUIENTES:
_________________________________________
EL BAUDAJE LA PARIDAD EL NÚMERO DE STOPS BITS EL TAMAÑO EN BITS DEL DATO
ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II
Carlos Canto Q.
INTERRUPCIONES EN LA IBM PC
SERVICIOS DE LA INT 14H DEL BIOSSERVICIO 00h:INICIALIZACIÒN DEL PUERTO SERIAL
b7b7 b6b6 b5b5 b4b4 b3b3 b2b2 b1b1 b0b0
Tamaño del dato
# de stops bits
Código de paridad
Código de baudaje
Baudaje
_________
765 bps
_________
000 110
001 150
010 300
011 600
100 1200
101 2400
110 4800
111 9600
Baudaje
_________
765 bps
_________
000 110
001 150
010 300
011 600
100 1200
101 2400
110 4800
111 9600
Paridad
________________
43 significado
________________
00 ninguna
01 Paridad impar
10 ninguna
11 Paridad par
Paridad
________________
43 significado
________________
00 ninguna
01 Paridad impar
10 ninguna
11 Paridad par
Stop bits
_____________
bit2 significado
_____________
0 1stop bit
1 2 stops bits
Stop bits
_____________
bit2 significado
_____________
0 1stop bit
1 2 stops bits
Tamaño del dato
____________
10 significado
____________
00 No usado
01 No usado
10 7 bits
11 8 bits
Tamaño del dato
____________
10 significado
____________
00 No usado
01 No usado
10 7 bits
11 8 bits