11-interrupciones en la ibm pc

45
ARQUITECTURA DE COMPUTADORAS II Carlos Canto Q. Interrupciones en la IBM PC

Upload: carlos-zepol

Post on 01-Dec-2014

48 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 11-Interrupciones en La Ibm Pc

ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II

Carlos Canto Q.

Interrupciones en la IBM PCInterrupciones en la IBM PC

Page 2: 11-Interrupciones en La Ibm Pc

INTERRUPCIONES EN LA IBM PCARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II

Carlos Canto Q.

POLLING (SONDEO)POLLING (SONDEO)

Page 3: 11-Interrupciones en La Ibm Pc

INTERRUPCIONES EN LA IBM PCARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II

Carlos Canto Q.

INTERRUPCIONESINTERRUPCIONES

Page 4: 11-Interrupciones en La Ibm Pc

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

Page 5: 11-Interrupciones en La Ibm Pc

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

Page 6: 11-Interrupciones en La Ibm Pc

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

Page 7: 11-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

Page 8: 11-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

Page 9: 11-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

Page 10: 11-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

Page 11: 11-Interrupciones en La Ibm Pc

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

Page 12: 11-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

Page 13: 11-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

Page 14: 11-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

Page 15: 11-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:

Page 16: 11-Interrupciones en La Ibm Pc

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

Page 17: 11-Interrupciones en La Ibm Pc

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

Page 18: 11-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

Page 19: 11-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

Page 20: 11-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

Page 21: 11-Interrupciones en La Ibm Pc

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

Page 22: 11-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)

Page 23: 11-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 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:

Page 24: 11-Interrupciones en La Ibm Pc

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

Page 25: 11-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

Page 26: 11-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

Page 27: 11-Interrupciones en La Ibm Pc

ARQUITECTURA DE COMPUTADORAS IIARQUITECTURA DE COMPUTADORAS II

Carlos Canto Q.

Entradas del controlador programable de interrupciones PIC 8259

INTERRUPCIONES EN LA IBM PC

Page 28: 11-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

Page 29: 11-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

Page 30: 11-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

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

Page 31: 11-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

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)

Page 32: 11-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

Fin de interrupción (EOI)

Los bits activos de ISR bloquean futuras peticiones por esa línea

Page 33: 11-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

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)

Page 34: 11-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

Page 35: 11-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

Page 36: 11-Interrupciones en La Ibm 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

Page 37: 11-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)

Page 38: 11-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:

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

Page 39: 11-Interrupciones en La Ibm Pc

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

Page 40: 11-Interrupciones en La Ibm Pc

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

Page 41: 11-Interrupciones en La Ibm Pc

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

Page 42: 11-Interrupciones en La Ibm Pc

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

Page 43: 11-Interrupciones en La Ibm Pc

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.

Page 44: 11-Interrupciones en La Ibm Pc

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

Page 45: 11-Interrupciones en La Ibm Pc

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