Registros del CPU, Instrucciones y Manejo de Interrupciones

Clasificado en Informática

Escrito el en español con un tamaño de 4,13 KB

Registros del CPU

Registros de Propósito General

AX: Acumulador. Como un registro de 16 bits, se utiliza para instrucciones tales como multiplicación y división.

BX: Índice de base. Algunas veces guarda la dirección de desplazamiento de una posición en el sistema de memoria.

CX: Conteo. Propósito general que también guarda la cuenta de varias instrucciones.

DX: Datos. Propósito general que guarda una parte del resultado de una multiplicación, o parte del dividendo antes de la división.

Registros de Banderas

  • CF (acarreo): Indica un acarreo en suma y resta.
  • AF (acarreo auxiliar): Acarreo de un cuarto bit de byte.
  • ZF (cero): El resultado de una operación aritmética o lógica es 0.
  • SF (signo): Signo aritmético del resultado después de una suma o resta.
  • TF (trampa): Cuando este bit es activado, el procesador ejecuta una instancia a la vez.
  • IF (interrupción): Habilitación de una interrupción.
  • DF (dirección): Cuando este se activa, el registro de contenido se indexa directamente.
  • OF (overflow): Es activada cuando el resultado de una operación es mayor al tamaño del registro.
  • PF (paridad): 0 impar, 1 par.

Tipos de Operandos

  • SHORT: Inmediato
  • NEAR: Inmediato-registro-memoria
  • FAR: Inmediato-memoria

Instrucciones

CMP

Sintaxis: CMP Op destino, Op fuente

Compara dos operandos.

LOOPZ

Sintaxis: LOOPZ etiqueta

Salta a la etiqueta si el valor del registro CX es diferente de 0 y la bandera ZF es 1.

LOOPNZ

Sintaxis: LOOPNZ etiqueta

Salta a la etiqueta si el valor del registro CX es diferente de 0 y la bandera ZF es 0.

Procedimientos

Un procedimiento es un grupo de instrucciones que desempeñan una tarea específica.

Sintaxis

etiqueta PROC [NEAR | FAR]
  ; Instrucciones del procedimiento
  RET [Constante]
etiqueta ENDP

Llamada a un Procedimiento

La instrucción CALL guarda en la pila la dirección de la siguiente instrucción y transfiere el control a la dirección especificada.

Interrupciones

Una interrupción es una situación que suspende la ejecución de un programa de modo que el sistema pueda realizar una acción para trasladarla.

Clasificación de Interrupciones

  • De software
  • Excepciones
  • De hardware

Interrupciones de Software

Son activadas por el usuario generalmente para operaciones de entrada y salida.

Clasificación de Interrupciones de Software

  • Por software
  • Del sistema (DOS, ROM BIOS)
  • Del usuario

Características para Seleccionar una Interrupción por Software

  • Velocidad (usa la del BIOS)
  • Portabilidad (usa la del DOS)

Interrupciones del Sistema Operativo

Suspensión temporal a la ejecución de un proceso, para pasar a ejecutar una subrutina de servicio de interrupción.

Ejemplos de Interrupciones de la BIOS

  • INT 10h: Servicio de video
  • INT 14H: Comunicaciones en serie
  • INT 19H: Reinicialización del sistema

Interrupciones de Hardware Externas

Aquellas que generan los dispositivos periféricos, por ejemplo, un teclado.

Ejemplos de Interrupciones del DOS

  • INT 21h: Servicio del DOS
  • INT 25h: Lectura absoluta del disco
  • INT 29H: Impresión rápida en pantalla

Diferencia entre Transferencia por Programa y por DMA

  • DMA no tiene ventajas sobre las transferencias por programa cuando se trata de transferir un dato aislado.
  • DMA es adecuada cuando debe transferirse un bloque de datos.
  • DMA debe conocer la dirección de memoria involucrada en la transferencia.

Entradas relacionadas: