SlideShare ist ein Scribd-Unternehmen logo
1 von 6
Downloaden Sie, um offline zu lesen
Ensamblador



                                          Ensamblador
                                           Interrupciones

Definición: Una interrupción es el rompimiento en la secuencia de un programa para
           ejecutar un programa especial llamando una rutina de servicio cuya
           característica principal es que al finalizar regresa al punto donde se interrumpió
           el programa.

Dentro de una computadora existen dos clases de interrupciones:

        Interrupciones por software: Son aquellas programadas por el usuario, es decir, el
        usuario decide cuando y donde ejecutarlas, generalmente son usadas para realizar
        entrada y salida.

        Interrupciones por hardware: Son aquellas que son provocadas por dispositivos
        externos al procesador su característica principal es que no son programadas, esto
        es, pueden ocurrir en cualquier momento en el programa. Existen dos clases de
        interrupciones de este tipo:

             Interrupciones por hardware enmascarables: Aquellas en las que el usuario
              decide si quiere o no ser interrumpido.

             Interrupciones por hardware no enmascarables (NMI): Aquellas que siempre
              interrumpen al programa.
                                                    INT


                                     SW                         HW

                  SISTEMA             USUARIO          ENMAS         NMI
                                                        IRQ’S
               SO             BIOS

       Las interrupciones por software se ejecutan con ayuda de las instrucciones: INT e
IRET, además se tiene 256 interrupciones: de la 00 a la FF.

        Asociado al concepto de interrupción se tiene un área de memoria llamada vector
de interrupciones; la cual contiene las direcciones de las rutinas de servicio de cada
interrrupción. Esta área se encuentra en el segmento 0000:0000.

        Para cada una de las direcciones se utilizan 4 bytes, dos bytes para el segmento y 2
para el desplazamiento. La instrucción INT tipo, realiza las siguientes tareas:

    1. Salvar el registro de banderas.

MC Beatriz Beltrán Martínez                                                                1
Ensamblador


    2. Salvar el IP de la dirección de regreso.
    3. Salvar el CS de la dirección de regreso.
    4. Salva los registros.
    5. Calcula el área donde esta la dirección de la rutina de servicio de la siguiente
       manera: tipo*4, en el vector de interrupciones.
    6. Ejecuta la rutina de servicio.

       A su vez, IRET, que regresa de la interrupción, ejecuta lo siguiente:
    1. Desempila los registros.
    2. Desempila la dirección de regreso.
    3. Desempila el registro de bandera.

          0000:0000           IP                        VI
                                    INT 0
              :0002           CS
              :0004           IP                        SO
                                    INT 1
              :0006           CS                                       Área de
                                                                       programas
                                                                       transitorios
                                                                       (TPA)
                                                       BIOS

                              Tabla de interrupciones del sistema.
            TIPO       DIRECCIÓN                   USO                  SISTEMA
              0           0000               División por cero            BIOS
              1           0004                  Single Step              DEBUG
              2           0008                      NMI                   BIOS
              3           000C               Puntos de ruptura           DEBUG
              4           0010                   Overflow                 BIOS
              5           0014                 Print Screen               BIOS
            6–7                                  No usadas
              8           0020                     Timer                  BIOS
              9           0024                    Teclado                 BIOS
            A–D                                  No usadas
              E           0038                     Disco                  BIOS
              F           003C                   Impresora                BIOS
             10           0040                   E/S video                BIOS
             11           0044                Lista de equipo             BIOS
             12           0048             Tamaño de memoria              BIOS
             13           004C                   E/S disco                BIOS
             14           0050                   E/S serial               BIOS
             15           0054                  E/S cassette              BIOS
             16           0058                  E/S teclado               BIOS
             17           005C               Salida impresora             BIOS
             18           0060                 ROM BASIC                 BASIC
             19           0064               Boot strap (reset)           BIOS
             1A           0068                 Fecha y hora               BIOS

MC Beatriz Beltrán Martínez                                                               2
Ensamblador


              1B              006C            Break (teclado)              BIOS
              1C              0070             Int de Timer                BIOS
              1D              0074            Tabla del video              BIOS
              1E              0078            Tabla de disco               BIOS
              1F              007C            Tabla del video              BIOS
              20              0080          Termina programa               DOS
              21              0084              Funciones                  DOS
              22              0088            Dir de regreso               DOS
              23              008C              Control C                  DOS
              24              0090            Errores críticos             DOS
              25              0094      Lectura absoluta de disco          DOS
              26              0098      Escritura absoluta de disco        DOS
              27              009C      Termina programa y deja            DOS
                                                 residente


        Al encender la computadora se ejecuta un programa; llamada rutina iniciadora; que
inicia todo el sistema dicho programa esta almacenado en la memoria ROM, y forma parte
del BIOS que es un conjunto de rutinas básicas para realizar E/S a dispositivos. Las
funciones son:
    1. Realiza una prueba de memoria.
    2. Inicia el vector de interrupciones.
    3. Inicia circuitos de soporte y dispositivos de E/S.
    4. Realiza el proceso conocido como el BOOT STRAP que consiste en leer el sector
        del disco en memoria, dicho sector contiene un programa que pasará el sistema
        operativo a la memoria y le transfiere el control.

        Las interrupciones del BIOS siempre están disponibles al usuario, en cambio las del
sistema operativo, sólo si es sistema se ha cargado en memoria. BIOS permite realizar
entrada y salida a dispositivos, el acceso a éstas rutinas es también por medio de
interrupciones de software y enviando parámetros a través de los registros.

        La interrupción 21h permite leer de teclado, escribir en vídeo, escribir en impresora,
leer y escribir de dispositivo auxiliar, además realizar cambios en el vector de
interrupciones, obtener y poner tanto la fecha como la hora.


                                     Manejo de Vídeo

        Las computadoras usan los llamados al sistema de vídeo o adaptadores de
display, para desplegar información en la pantalla. La función de tales adaptadores es
conectar la computadora a un monitor. Dichos sistemas están formados por una serie de
circuitos integrados entre los que destacan el controlador de display, puertos de E/S
programables, una ROM generadora de caracteres y una memoria RAM para mantener la
información desplegada. La función del controlador del display es definir el tipo de pantalla
usada, definir y controlar el cursor, asignar color y generar los caracteres.


MC Beatriz Beltrán Martínez                                                                 3
Ensamblador


        Los sistemas de vídeo pueden trabajar la pantalla en:

             Modo texto: Caracteres alfanuméricos.
             Modo gráfico: Despliega puntos.

       El controlador de display controla al cursor, que nos dice donde se va a escribir el
siguiente carácter. Los caracteres pueden verse como la unión de punto dentro de una
matriz para formar el carácter deseado.

       En los dos modos de vídeo se tienen dos tipos de resolución: Alta y mediana
resolución, aunque ya no se utiliza la resolución mediana; la resolución, nos brinda mejor
imagen. La pantalla se puede ver como si fuera una matriz de puntos o caracteres.

        Cada elemento en la matriz se encuentra almacenado en la memoria RAM del
adaptador de vídeo, de ahí se toma para ser enviado a la pantalla. En modo texto cada
elemento ocupa solo 2 bytes, uno mantiene el código ASCII del carácter y el otro un
atributo con el que se desplegará dicho carácter. El modo gráfico utiliza 4 bytes, 3 bytes
para el color y el cuarto es para el atributo.

Atributos: Background (fondo) y Foreground (frente).

                 000 Negro                      001 Azul
                 010 Verde                      011 Violeta
                 100 Rojo                       101 Magenta
                 110 Café                       111 Gris
                 1 Parpadea                     1 Intensidad alta
                 0 Normal                       0 Intensidad normal

        La matriz de vídeo se mapea en memoria por renglones, es decir, primero se
almacena el renglón cero, enseguida el renglón uno y así sucesivamente. Escribir un
carácter en vídeo equivale a escribir en la RAM de vídeo. Todos los sistemas de vídeo
tienen RAM para almacenar más de una pantalla; cada pantalla se distingue por un número
y se le conoce como página. Para escribir un carácter en directo a RAM se necesita:

                        Dir(i, j) = Dir_incial_de_vídeo + 80*2*i + j*2.

     Si se escribe un carácter de esta forma se le conoce como manejo directo de
memoria. Para este tipo de acceso, se puede utilizar las funciones de la interrupción 10h.

        Las formas que se tienen para escribir un carácter son:

       En lenguaje de alto nivel por medio de una instrucción.
       En lenguaje de bajo nivel con la INT 21h del sistema operativo DOS.
       Con funciones del BIOS con la INT 10h.
       Con el manejo directo de vídeo metiendo el carácter en memoria.



MC Beatriz Beltrán Martínez                                                              4
Ensamblador


                                     Manejo de Teclado

       La interrupción 16h sirve para el manejo de teclado, también se manejan por medio
de funciones. El teclado envía un carácter al CPU y lleva el código de barrido (Scan Code)
que sólo es un número y después lo transforma a ASCII.


                                 Interrupciones por Hardware

        En las PC que trabajan con el procesador, se tienen 2 tipos de interrupciones, como
ya se mencionó; las NMI llegan a través de una línea directamente al procesador y cuando
ésta se activa, el CPU provoca una interrupción por software del tipo 2.

       Además, se tienen 8 líneas que reciben las interrupciones enmascarables, también
llamadas IRQ (Interrupt ReQuest), asociada a éstas líneas se tiene una bandera IF (Interrupt
Flag) para determinar si se acepta o no las interrupciones.

     Si IF = 1 entonces IRQ’s están habilitadas
     Si IF = 0 entonces IRQ’s deshabilitadas.

        Esta bandera se manipula con las instrucciones:

     STI               IF = 1
     CLI               IF = 0

        Las 8 líneas de IRQ llegan directamente al CPU, antes son detenidas por un circuito
    llamado el control de interrupciones. La función de este circuito es determinar cual de
    las 8 líneas puede entrar a interrumpir al CPU en caso de provocarse dos o más
    interrupciones a la vez. Esta determinación se lleva a cabo en base en dos cosas:

         Prioridad: Las IRQ están numeradas:
                    IRQ 0
                    IRQ 1
                    ...
                    IRQ7
                    Las de más alta prioridad es la IRQ 0 y la de más baja prioridad es la
                    IRQ 7.
         Habilitación en el registro de máscaras: El controlador de interrupciones
                    contiene un registro de máscaras de 8 bits en el que cada bit
                    representa una máscara para una línea IRQ.
                         Reg. Máscaras        7 6 5 4 3 2 1 0
                                                                           IRQ 0
                                                                           IRQ 1
                                                                           ...
                                                                           IRQ 7


MC Beatriz Beltrán Martínez                                                               5
Ensamblador


                        Si bit i = 0 entonces IRQ i esta habilitada.
                        Si bit i = 1 entonces IRQ i esta deshabilitada.

       Por lo tanto las IRQ pueden ser habilitadas por grupo mediante la IF o
individualmente por medio del registro de máscaras.

        Una vez que el controlador de interrupciones ya decidió cual IRQ interrumpe, la
envía al CPU y si la bandera IF = 1, la interrupción se acepta y se le asocia una interrupción
por software:

           IRQ 0                             INT 8
           IRQ 1                             INT 9
           IRQ 2                             INT A
           IRQ 3                             INT B
           IRQ 4                             INT C
           IRQ 5                             INT D
           IRQ 6                             INT E
           IRQ 7                             INT F

        El registro de máscaras, se puede leer o escribir en el puerto 21h. Además de que el
registro de máscaras habilita o deshabilita el CPU. El IRQ 0 esta conectado a un circuito
que es el TIMER. El IRQ 1 está conectado con una línea al teclado. El IRQ 6 está
conectado a las unidades de disco.

        Timer (INT 8): Las PC tiene internamente un circuito que es el Timer, y el cual
tiene la función de interrumpir el CPU, un número de veces determinado por segundo. Su
rutina de servicio tiene la función de actualizar contadores en variables internas de la
computadora para que puedan usarse en la actualización de la fecha y la hora; además de
apagar el motor que mueve el disco si este no es usado, finalmente provoca una
interrupción por software, la INT 1Ch, quien inicialmente puede usarse en rutinas de
usuario que requieren sincronización con el tiempo.

       El contador empieza con un número y cada pulso que le da el timer, éste se
decrementa y cuando llega a cero entonces el timer, interrumpe y ejecuta la INT 8, sólo en
caso de que sea aceptado por el CPU y después vuelve el contador con el valor inicial.
Además, apaga el motor y el foco de las unidades del disco.

       Las rutinas de servicio de las interrupciones por hardware deben ser transparentes al
usuario, esto es, deben preservar todos sus registros.

        Teclado: El teclado tiene incluido un procesador, cuya función es estar censando
continuamente las teclas y si alguna de ellas se presiona entonces provoca una interrupción
IRQ 1 y además le envía al procesador central a través del puerto 60h, el código de barrido
asociado a esa tecla. Entonces se ejecuta una INT 9, cuya función es leer el código de
barrido del puerto y convertirlo a código ASCII, si es el caso, o bien interpretar el código
de barrido para cambiar el estado del teclado. Finalmente, ambos códigos se colocan en un
buffer para que puedan leerse por medio de la INT 16h.

MC Beatriz Beltrán Martínez                                                                 6

Weitere ähnliche Inhalte

Was ist angesagt?

Interrupciones del microprocesador
Interrupciones del microprocesadorInterrupciones del microprocesador
Interrupciones del microprocesadorJorge Luis Tinoco
 
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOFernando Marcos Marcos
 
VHDL - Enumerated Types (Part 3)
VHDL - Enumerated Types (Part 3)VHDL - Enumerated Types (Part 3)
VHDL - Enumerated Types (Part 3)Abhilash Nair
 
TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"Diego Rojas Ruiz
 
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4Luis Zurita
 
Arquitectura de Computadores: Generaciones de Computadores
Arquitectura de Computadores: Generaciones de ComputadoresArquitectura de Computadores: Generaciones de Computadores
Arquitectura de Computadores: Generaciones de ComputadoresLuis Fernando Aguas Bucheli
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensambladorjuan1993are
 
PWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosPWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosEduardo Henriquez
 
Presentation on Flip Flop
Presentation  on Flip FlopPresentation  on Flip Flop
Presentation on Flip FlopNahian Ahmed
 
Tia portal MANUAL
Tia portal MANUALTia portal MANUAL
Tia portal MANUALguelo
 
Unidadi. lenguajes de interfaz
Unidadi.   lenguajes de interfazUnidadi.   lenguajes de interfaz
Unidadi. lenguajes de interfazLuiS YmAY
 
Digital clock presentation
Digital clock presentationDigital clock presentation
Digital clock presentationAditya Jha ✅
 
MEMORIA VIRTUAL
MEMORIA VIRTUALMEMORIA VIRTUAL
MEMORIA VIRTUALandresinf
 

Was ist angesagt? (20)

Interrupciones del microprocesador
Interrupciones del microprocesadorInterrupciones del microprocesador
Interrupciones del microprocesador
 
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINOCONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
CONTADOR BINARIO ASCENDENTE DE 8 BITS CON ARDUINO
 
VHDL - Enumerated Types (Part 3)
VHDL - Enumerated Types (Part 3)VHDL - Enumerated Types (Part 3)
VHDL - Enumerated Types (Part 3)
 
TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"TIMERS&TEMPORIZADORES EN "C"
TIMERS&TEMPORIZADORES EN "C"
 
presentation on SCB,DEBUG,RESET of Arm Cortex processor
presentation on SCB,DEBUG,RESET of Arm Cortex processorpresentation on SCB,DEBUG,RESET of Arm Cortex processor
presentation on SCB,DEBUG,RESET of Arm Cortex processor
 
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4GUÍA DE EJERCICIOS RESUELTOS TEMA 4
GUÍA DE EJERCICIOS RESUELTOS TEMA 4
 
Arquitectura de Computadores: Generaciones de Computadores
Arquitectura de Computadores: Generaciones de ComputadoresArquitectura de Computadores: Generaciones de Computadores
Arquitectura de Computadores: Generaciones de Computadores
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
PWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros InvolucradosPWM con PIC16F877A: Modulos y Registros Involucrados
PWM con PIC16F877A: Modulos y Registros Involucrados
 
Presentation on Flip Flop
Presentation  on Flip FlopPresentation  on Flip Flop
Presentation on Flip Flop
 
Sumadores.pdf
Sumadores.pdfSumadores.pdf
Sumadores.pdf
 
Tia portal MANUAL
Tia portal MANUALTia portal MANUAL
Tia portal MANUAL
 
Unidadi. lenguajes de interfaz
Unidadi.   lenguajes de interfazUnidadi.   lenguajes de interfaz
Unidadi. lenguajes de interfaz
 
Digital clock presentation
Digital clock presentationDigital clock presentation
Digital clock presentation
 
MEMORIA VIRTUAL
MEMORIA VIRTUALMEMORIA VIRTUAL
MEMORIA VIRTUAL
 
UNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓNUNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓN
 
Interrupts
Interrupts Interrupts
Interrupts
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Interrupts
InterruptsInterrupts
Interrupts
 
Semaforos
SemaforosSemaforos
Semaforos
 

Andere mochten auch

Interrupciones y excepciones de software y hardware
Interrupciones y excepciones de software y hardwareInterrupciones y excepciones de software y hardware
Interrupciones y excepciones de software y hardwareCarlos Yanez
 
Manual para ensamble y desensamble del pc
Manual para ensamble y desensamble del pcManual para ensamble y desensamble del pc
Manual para ensamble y desensamble del pcTecnico Industrial
 
Interrupciones y llamadas del sistema
Interrupciones y llamadas del sistemaInterrupciones y llamadas del sistema
Interrupciones y llamadas del sistemajomapuga
 
DISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORAL
DISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORALDISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORAL
DISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORALtatianapineda
 
Interrupciones
InterrupcionesInterrupciones
Interrupcioneshandresrm
 
Buses, Direccionamiento, Temporizacion
Buses, Direccionamiento, TemporizacionBuses, Direccionamiento, Temporizacion
Buses, Direccionamiento, TemporizacionYESENIA CETINA
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativoalarcon14
 
Interrupciones
InterrupcionesInterrupciones
Interrupcionesmatrix1979
 
Arquitectura de Computadores
Arquitectura de ComputadoresArquitectura de Computadores
Arquitectura de ComputadoresErwin Meza
 
Memorias de la pc
Memorias de la pcMemorias de la pc
Memorias de la pcednalejita
 

Andere mochten auch (20)

Interrupciones: Sistemas Operativos
Interrupciones: Sistemas OperativosInterrupciones: Sistemas Operativos
Interrupciones: Sistemas Operativos
 
Interrupciones y excepciones de software y hardware
Interrupciones y excepciones de software y hardwareInterrupciones y excepciones de software y hardware
Interrupciones y excepciones de software y hardware
 
Manual para ensamble y desensamble del pc
Manual para ensamble y desensamble del pcManual para ensamble y desensamble del pc
Manual para ensamble y desensamble del pc
 
Interrupciones y llamadas del sistema
Interrupciones y llamadas del sistemaInterrupciones y llamadas del sistema
Interrupciones y llamadas del sistema
 
DISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORAL
DISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORALDISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORAL
DISPOSITIVOS DE ALMACENAMIENTO PERMANENTE Y TEMPORAL
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Memorias dinámicas
Memorias dinámicasMemorias dinámicas
Memorias dinámicas
 
05.Manejo de interrupciones
05.Manejo de interrupciones05.Manejo de interrupciones
05.Manejo de interrupciones
 
Buses, Direccionamiento, Temporizacion
Buses, Direccionamiento, TemporizacionBuses, Direccionamiento, Temporizacion
Buses, Direccionamiento, Temporizacion
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Sistema de Video
Sistema de VideoSistema de Video
Sistema de Video
 
Capitulo 6
Capitulo 6Capitulo 6
Capitulo 6
 
Manual ensamble y desensamble
Manual ensamble y desensambleManual ensamble y desensamble
Manual ensamble y desensamble
 
PROCESO DE ENSAMBLE Y DESENSAMBLE DE UN EQUIPO DE CÓMPUTO
PROCESO DE ENSAMBLE Y DESENSAMBLE DE UN EQUIPO DE CÓMPUTOPROCESO DE ENSAMBLE Y DESENSAMBLE DE UN EQUIPO DE CÓMPUTO
PROCESO DE ENSAMBLE Y DESENSAMBLE DE UN EQUIPO DE CÓMPUTO
 
interrupciones 8086
interrupciones 8086interrupciones 8086
interrupciones 8086
 
PROCESO DE ATENCION A INTERRUPCIONES
PROCESO DE ATENCION A INTERRUPCIONESPROCESO DE ATENCION A INTERRUPCIONES
PROCESO DE ATENCION A INTERRUPCIONES
 
Arquitectura de Computadores
Arquitectura de ComputadoresArquitectura de Computadores
Arquitectura de Computadores
 
Tarea de efrain ruiz fernandez
Tarea de efrain ruiz fernandezTarea de efrain ruiz fernandez
Tarea de efrain ruiz fernandez
 
Memorias de la pc
Memorias de la pcMemorias de la pc
Memorias de la pc
 

Ähnlich wie Interrupciones de hardware

Diapositiva de estudios: PPT - Microchip PIC18.pdf
Diapositiva de estudios: PPT - Microchip PIC18.pdfDiapositiva de estudios: PPT - Microchip PIC18.pdf
Diapositiva de estudios: PPT - Microchip PIC18.pdfjorgejvc777
 
Interrupciones de la bios
Interrupciones de la biosInterrupciones de la bios
Interrupciones de la biosCésar Salazar
 
Expocision bios
Expocision biosExpocision bios
Expocision biosjustexz
 
Las interrupciones
Las interrupcionesLas interrupciones
Las interrupcioneszombra18
 
Presentacion memorias y bios. diego m, johan v.
Presentacion memorias y bios. diego m, johan v.Presentacion memorias y bios. diego m, johan v.
Presentacion memorias y bios. diego m, johan v.Johan Vásquez
 
Proceso de arranque de minix
Proceso de arranque de minixProceso de arranque de minix
Proceso de arranque de minixTechN9ne
 
8086 interrupciones
8086 interrupciones8086 interrupciones
8086 interrupcioneslinkil
 
Expocision bios
Expocision biosExpocision bios
Expocision biosjustexz
 
Como Configuro La Bios De Mi Computadora
Como Configuro La Bios De Mi ComputadoraComo Configuro La Bios De Mi Computadora
Como Configuro La Bios De Mi Computadorateovera
 
Controladores y el bios
Controladores y el biosControladores y el bios
Controladores y el biosequipo21
 
Sist. oper. unidad i i– clase1
Sist. oper. unidad i i– clase1Sist. oper. unidad i i– clase1
Sist. oper. unidad i i– clase1johfer53
 
La Bios
La BiosLa Bios
La BiosYoorx
 
La Bios
La BiosLa Bios
La BiosYoorx
 
Informe de everest
Informe de everestInforme de everest
Informe de everestjesus5597
 
4. interrupciones y temporizadores
4. interrupciones y temporizadores4. interrupciones y temporizadores
4. interrupciones y temporizadoresDavid Narváez
 

Ähnlich wie Interrupciones de hardware (20)

INTERRUPCIONES.ppt
INTERRUPCIONES.pptINTERRUPCIONES.ppt
INTERRUPCIONES.ppt
 
Diapositiva de estudios: PPT - Microchip PIC18.pdf
Diapositiva de estudios: PPT - Microchip PIC18.pdfDiapositiva de estudios: PPT - Microchip PIC18.pdf
Diapositiva de estudios: PPT - Microchip PIC18.pdf
 
Interrupciones de la bios
Interrupciones de la biosInterrupciones de la bios
Interrupciones de la bios
 
Expocision bios
Expocision biosExpocision bios
Expocision bios
 
Las interrupciones
Las interrupcionesLas interrupciones
Las interrupciones
 
Las interrupciones
Las interrupcionesLas interrupciones
Las interrupciones
 
JERARQUIA DE LA MEMORIA
JERARQUIA DE LA MEMORIAJERARQUIA DE LA MEMORIA
JERARQUIA DE LA MEMORIA
 
Presentacion memorias y bios. diego m, johan v.
Presentacion memorias y bios. diego m, johan v.Presentacion memorias y bios. diego m, johan v.
Presentacion memorias y bios. diego m, johan v.
 
Proceso de arranque de minix
Proceso de arranque de minixProceso de arranque de minix
Proceso de arranque de minix
 
8086 int
8086 int8086 int
8086 int
 
8086 interrupciones
8086 interrupciones8086 interrupciones
8086 interrupciones
 
Expocision bios
Expocision biosExpocision bios
Expocision bios
 
Como Configuro La Bios De Mi Computadora
Como Configuro La Bios De Mi ComputadoraComo Configuro La Bios De Mi Computadora
Como Configuro La Bios De Mi Computadora
 
Controladores y el bios
Controladores y el biosControladores y el bios
Controladores y el bios
 
Sist. oper. unidad i i– clase1
Sist. oper. unidad i i– clase1Sist. oper. unidad i i– clase1
Sist. oper. unidad i i– clase1
 
La Bios
La BiosLa Bios
La Bios
 
La Bios
La BiosLa Bios
La Bios
 
Informe de everest
Informe de everestInforme de everest
Informe de everest
 
Everest informe
Everest informeEverest informe
Everest informe
 
4. interrupciones y temporizadores
4. interrupciones y temporizadores4. interrupciones y temporizadores
4. interrupciones y temporizadores
 

Mehr von SpiderHal

3.1. macros internas
3.1. macros internas3.1. macros internas
3.1. macros internasSpiderHal
 
1.2.1 - Buses
1.2.1 - Buses1.2.1 - Buses
1.2.1 - BusesSpiderHal
 
1.2.1.-Buses
1.2.1.-Buses1.2.1.-Buses
1.2.1.-BusesSpiderHal
 
Tipos De Ensambladores
Tipos De EnsambladoresTipos De Ensambladores
Tipos De EnsambladoresSpiderHal
 
1.1.2 Escalabilidad de los Microprocesadores
1.1.2 Escalabilidad de los Microprocesadores1.1.2 Escalabilidad de los Microprocesadores
1.1.2 Escalabilidad de los MicroprocesadoresSpiderHal
 

Mehr von SpiderHal (6)

3.1. macros internas
3.1. macros internas3.1. macros internas
3.1. macros internas
 
1.2.1 - Buses
1.2.1 - Buses1.2.1 - Buses
1.2.1 - Buses
 
1.2.1.-Buses
1.2.1.-Buses1.2.1.-Buses
1.2.1.-Buses
 
Tipos De Ensambladores
Tipos De EnsambladoresTipos De Ensambladores
Tipos De Ensambladores
 
1.1.2 Escalabilidad de los Microprocesadores
1.1.2 Escalabilidad de los Microprocesadores1.1.2 Escalabilidad de los Microprocesadores
1.1.2 Escalabilidad de los Microprocesadores
 
Ensamblador
EnsambladorEnsamblador
Ensamblador
 

Kürzlich hochgeladen

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxpvtablets2023
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdfValeriaCorrea29
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Katherine Concepcion Gonzalez
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxiemerc2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.JonathanCovena1
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSYadi Campos
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024IES Vicent Andres Estelles
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxNadiaMartnez11
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOPsicoterapia Holística
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfpatriciaines1993
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 

Kürzlich hochgeladen (20)

Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptxRESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
RESULTADOS DE LA EVALUACIÓN DIAGNÓSTICA 2024 - ACTUALIZADA.pptx
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdf
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.Análisis de los Factores Externos de la Organización.
Análisis de los Factores Externos de la Organización.
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VSSEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
SEPTIMO SEGUNDO PERIODO EMPRENDIMIENTO VS
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docxTALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
TALLER DE DEMOCRACIA Y GOBIERNO ESCOLAR-COMPETENCIAS N°3.docx
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 

Interrupciones de hardware

  • 1. Ensamblador Ensamblador Interrupciones Definición: Una interrupción es el rompimiento en la secuencia de un programa para ejecutar un programa especial llamando una rutina de servicio cuya característica principal es que al finalizar regresa al punto donde se interrumpió el programa. Dentro de una computadora existen dos clases de interrupciones: Interrupciones por software: Son aquellas programadas por el usuario, es decir, el usuario decide cuando y donde ejecutarlas, generalmente son usadas para realizar entrada y salida. Interrupciones por hardware: Son aquellas que son provocadas por dispositivos externos al procesador su característica principal es que no son programadas, esto es, pueden ocurrir en cualquier momento en el programa. Existen dos clases de interrupciones de este tipo:  Interrupciones por hardware enmascarables: Aquellas en las que el usuario decide si quiere o no ser interrumpido.  Interrupciones por hardware no enmascarables (NMI): Aquellas que siempre interrumpen al programa. INT SW HW SISTEMA USUARIO ENMAS NMI IRQ’S SO BIOS Las interrupciones por software se ejecutan con ayuda de las instrucciones: INT e IRET, además se tiene 256 interrupciones: de la 00 a la FF. Asociado al concepto de interrupción se tiene un área de memoria llamada vector de interrupciones; la cual contiene las direcciones de las rutinas de servicio de cada interrrupción. Esta área se encuentra en el segmento 0000:0000. Para cada una de las direcciones se utilizan 4 bytes, dos bytes para el segmento y 2 para el desplazamiento. La instrucción INT tipo, realiza las siguientes tareas: 1. Salvar el registro de banderas. MC Beatriz Beltrán Martínez 1
  • 2. Ensamblador 2. Salvar el IP de la dirección de regreso. 3. Salvar el CS de la dirección de regreso. 4. Salva los registros. 5. Calcula el área donde esta la dirección de la rutina de servicio de la siguiente manera: tipo*4, en el vector de interrupciones. 6. Ejecuta la rutina de servicio. A su vez, IRET, que regresa de la interrupción, ejecuta lo siguiente: 1. Desempila los registros. 2. Desempila la dirección de regreso. 3. Desempila el registro de bandera. 0000:0000 IP VI INT 0 :0002 CS :0004 IP SO INT 1 :0006 CS Área de programas transitorios (TPA) BIOS Tabla de interrupciones del sistema. TIPO DIRECCIÓN USO SISTEMA 0 0000 División por cero BIOS 1 0004 Single Step DEBUG 2 0008 NMI BIOS 3 000C Puntos de ruptura DEBUG 4 0010 Overflow BIOS 5 0014 Print Screen BIOS 6–7 No usadas 8 0020 Timer BIOS 9 0024 Teclado BIOS A–D No usadas E 0038 Disco BIOS F 003C Impresora BIOS 10 0040 E/S video BIOS 11 0044 Lista de equipo BIOS 12 0048 Tamaño de memoria BIOS 13 004C E/S disco BIOS 14 0050 E/S serial BIOS 15 0054 E/S cassette BIOS 16 0058 E/S teclado BIOS 17 005C Salida impresora BIOS 18 0060 ROM BASIC BASIC 19 0064 Boot strap (reset) BIOS 1A 0068 Fecha y hora BIOS MC Beatriz Beltrán Martínez 2
  • 3. Ensamblador 1B 006C Break (teclado) BIOS 1C 0070 Int de Timer BIOS 1D 0074 Tabla del video BIOS 1E 0078 Tabla de disco BIOS 1F 007C Tabla del video BIOS 20 0080 Termina programa DOS 21 0084 Funciones DOS 22 0088 Dir de regreso DOS 23 008C Control C DOS 24 0090 Errores críticos DOS 25 0094 Lectura absoluta de disco DOS 26 0098 Escritura absoluta de disco DOS 27 009C Termina programa y deja DOS residente Al encender la computadora se ejecuta un programa; llamada rutina iniciadora; que inicia todo el sistema dicho programa esta almacenado en la memoria ROM, y forma parte del BIOS que es un conjunto de rutinas básicas para realizar E/S a dispositivos. Las funciones son: 1. Realiza una prueba de memoria. 2. Inicia el vector de interrupciones. 3. Inicia circuitos de soporte y dispositivos de E/S. 4. Realiza el proceso conocido como el BOOT STRAP que consiste en leer el sector del disco en memoria, dicho sector contiene un programa que pasará el sistema operativo a la memoria y le transfiere el control. Las interrupciones del BIOS siempre están disponibles al usuario, en cambio las del sistema operativo, sólo si es sistema se ha cargado en memoria. BIOS permite realizar entrada y salida a dispositivos, el acceso a éstas rutinas es también por medio de interrupciones de software y enviando parámetros a través de los registros. La interrupción 21h permite leer de teclado, escribir en vídeo, escribir en impresora, leer y escribir de dispositivo auxiliar, además realizar cambios en el vector de interrupciones, obtener y poner tanto la fecha como la hora. Manejo de Vídeo Las computadoras usan los llamados al sistema de vídeo o adaptadores de display, para desplegar información en la pantalla. La función de tales adaptadores es conectar la computadora a un monitor. Dichos sistemas están formados por una serie de circuitos integrados entre los que destacan el controlador de display, puertos de E/S programables, una ROM generadora de caracteres y una memoria RAM para mantener la información desplegada. La función del controlador del display es definir el tipo de pantalla usada, definir y controlar el cursor, asignar color y generar los caracteres. MC Beatriz Beltrán Martínez 3
  • 4. Ensamblador Los sistemas de vídeo pueden trabajar la pantalla en:  Modo texto: Caracteres alfanuméricos.  Modo gráfico: Despliega puntos. El controlador de display controla al cursor, que nos dice donde se va a escribir el siguiente carácter. Los caracteres pueden verse como la unión de punto dentro de una matriz para formar el carácter deseado. En los dos modos de vídeo se tienen dos tipos de resolución: Alta y mediana resolución, aunque ya no se utiliza la resolución mediana; la resolución, nos brinda mejor imagen. La pantalla se puede ver como si fuera una matriz de puntos o caracteres. Cada elemento en la matriz se encuentra almacenado en la memoria RAM del adaptador de vídeo, de ahí se toma para ser enviado a la pantalla. En modo texto cada elemento ocupa solo 2 bytes, uno mantiene el código ASCII del carácter y el otro un atributo con el que se desplegará dicho carácter. El modo gráfico utiliza 4 bytes, 3 bytes para el color y el cuarto es para el atributo. Atributos: Background (fondo) y Foreground (frente). 000 Negro 001 Azul 010 Verde 011 Violeta 100 Rojo 101 Magenta 110 Café 111 Gris 1 Parpadea 1 Intensidad alta 0 Normal 0 Intensidad normal La matriz de vídeo se mapea en memoria por renglones, es decir, primero se almacena el renglón cero, enseguida el renglón uno y así sucesivamente. Escribir un carácter en vídeo equivale a escribir en la RAM de vídeo. Todos los sistemas de vídeo tienen RAM para almacenar más de una pantalla; cada pantalla se distingue por un número y se le conoce como página. Para escribir un carácter en directo a RAM se necesita: Dir(i, j) = Dir_incial_de_vídeo + 80*2*i + j*2. Si se escribe un carácter de esta forma se le conoce como manejo directo de memoria. Para este tipo de acceso, se puede utilizar las funciones de la interrupción 10h. Las formas que se tienen para escribir un carácter son:  En lenguaje de alto nivel por medio de una instrucción.  En lenguaje de bajo nivel con la INT 21h del sistema operativo DOS.  Con funciones del BIOS con la INT 10h.  Con el manejo directo de vídeo metiendo el carácter en memoria. MC Beatriz Beltrán Martínez 4
  • 5. Ensamblador Manejo de Teclado La interrupción 16h sirve para el manejo de teclado, también se manejan por medio de funciones. El teclado envía un carácter al CPU y lleva el código de barrido (Scan Code) que sólo es un número y después lo transforma a ASCII. Interrupciones por Hardware En las PC que trabajan con el procesador, se tienen 2 tipos de interrupciones, como ya se mencionó; las NMI llegan a través de una línea directamente al procesador y cuando ésta se activa, el CPU provoca una interrupción por software del tipo 2. Además, se tienen 8 líneas que reciben las interrupciones enmascarables, también llamadas IRQ (Interrupt ReQuest), asociada a éstas líneas se tiene una bandera IF (Interrupt Flag) para determinar si se acepta o no las interrupciones.  Si IF = 1 entonces IRQ’s están habilitadas  Si IF = 0 entonces IRQ’s deshabilitadas. Esta bandera se manipula con las instrucciones:  STI IF = 1  CLI IF = 0 Las 8 líneas de IRQ llegan directamente al CPU, antes son detenidas por un circuito llamado el control de interrupciones. La función de este circuito es determinar cual de las 8 líneas puede entrar a interrumpir al CPU en caso de provocarse dos o más interrupciones a la vez. Esta determinación se lleva a cabo en base en dos cosas:  Prioridad: Las IRQ están numeradas: IRQ 0 IRQ 1 ... IRQ7 Las de más alta prioridad es la IRQ 0 y la de más baja prioridad es la IRQ 7.  Habilitación en el registro de máscaras: El controlador de interrupciones contiene un registro de máscaras de 8 bits en el que cada bit representa una máscara para una línea IRQ. Reg. Máscaras 7 6 5 4 3 2 1 0 IRQ 0 IRQ 1 ... IRQ 7 MC Beatriz Beltrán Martínez 5
  • 6. Ensamblador Si bit i = 0 entonces IRQ i esta habilitada. Si bit i = 1 entonces IRQ i esta deshabilitada. Por lo tanto las IRQ pueden ser habilitadas por grupo mediante la IF o individualmente por medio del registro de máscaras. Una vez que el controlador de interrupciones ya decidió cual IRQ interrumpe, la envía al CPU y si la bandera IF = 1, la interrupción se acepta y se le asocia una interrupción por software:  IRQ 0  INT 8  IRQ 1  INT 9  IRQ 2  INT A  IRQ 3  INT B  IRQ 4  INT C  IRQ 5  INT D  IRQ 6  INT E  IRQ 7  INT F El registro de máscaras, se puede leer o escribir en el puerto 21h. Además de que el registro de máscaras habilita o deshabilita el CPU. El IRQ 0 esta conectado a un circuito que es el TIMER. El IRQ 1 está conectado con una línea al teclado. El IRQ 6 está conectado a las unidades de disco. Timer (INT 8): Las PC tiene internamente un circuito que es el Timer, y el cual tiene la función de interrumpir el CPU, un número de veces determinado por segundo. Su rutina de servicio tiene la función de actualizar contadores en variables internas de la computadora para que puedan usarse en la actualización de la fecha y la hora; además de apagar el motor que mueve el disco si este no es usado, finalmente provoca una interrupción por software, la INT 1Ch, quien inicialmente puede usarse en rutinas de usuario que requieren sincronización con el tiempo. El contador empieza con un número y cada pulso que le da el timer, éste se decrementa y cuando llega a cero entonces el timer, interrumpe y ejecuta la INT 8, sólo en caso de que sea aceptado por el CPU y después vuelve el contador con el valor inicial. Además, apaga el motor y el foco de las unidades del disco. Las rutinas de servicio de las interrupciones por hardware deben ser transparentes al usuario, esto es, deben preservar todos sus registros. Teclado: El teclado tiene incluido un procesador, cuya función es estar censando continuamente las teclas y si alguna de ellas se presiona entonces provoca una interrupción IRQ 1 y además le envía al procesador central a través del puerto 60h, el código de barrido asociado a esa tecla. Entonces se ejecuta una INT 9, cuya función es leer el código de barrido del puerto y convertirlo a código ASCII, si es el caso, o bien interpretar el código de barrido para cambiar el estado del teclado. Finalmente, ambos códigos se colocan en un buffer para que puedan leerse por medio de la INT 16h. MC Beatriz Beltrán Martínez 6