1 / 14

Arquitectura del Computador

Arquitectura del Computador. Unidad I: Registros e Interrupciones Facilitador: Ing. Eduardo Brando. Lenguaje de Maquina - Registros. Registros

barth
Télécharger la présentation

Arquitectura del Computador

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arquitectura del Computador Unidad I: Registros e Interrupciones Facilitador: Ing. Eduardo Brando

  2. Lenguaje de Maquina - Registros • Registros • Se emplean para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética. Los registros son espacios físicos dentro del microprocesador con capacidad de 4 bits hasta 64 bits dependiendo del microprocesador que se emplee. Los registros son direccionables por medio de una viñeta, que es una dirección de memoria. Los bits, por conveniencia, se numeran de derecha a izquierda (15,14,13…. 3,2,1,0), los registros están divididos en seis grupos los cuales tienen un fin especifico • Tipos de registro • - Registros de Propósito General • Registros índices • Registros apuntadores • Registros banderas • Registros de segmentos • Registros de instrucción

  3. Lenguaje de Maquina Registros de propósito general Los registros de propósito general son los caballos de fuerza del sistema o las herramientas del sistema. Son únicos en el sentido de que se les puede direccionar como una palabra o como un byte. El ultimo byte de la izquierda es la parte “alta”, y el ultimo byte de la derecha es la parte “baja” por ejemplo, el registro CX consta de una parte CH (alta) y una parte CL (baja), y usted puede referirse a cualquier parte por su nombre. Registro AX: el acumulador principal, es utilizado para operaciones que implican entrada/salida y la mayor parte de la aritmética. Por ejemplo, las instrucciones para multiplicar, dividir y traducir suponen el uso del AX. También, algunas operaciones generan código más eficientes Registro BX: El registro BX es el registro base, y es el único registro de propósito general que puede ser un índice para direccionamiento indexado. También es común emplear el BX para cálculos.

  4. Lenguaje de Maquina Registros de propósito general Registro CX: El registro CX es conocido como el registro contador. Puede contener un valor para controlar el número de veces que un ciclo se repite o un valor para corrimiento de bits. Registro DX: El registro DX es el registro de datos. En algunas operaciones se indica mediante este registro el número de puerto de entrada/salida, y en las operaciones de multiplicación y división con cifras grandes suponen al DX y al AX trabajando juntos. Puede usar los registros de propósitos para suma y resta de cifras de 8, 16, 32 bits.

  5. Lenguaje de Maquina Registros de Segmentos • Los registros de segmento se utilizan para referenciar áreas de memoria • Los procesadores de la familia Intel poseen un grupo de registros creados con el fin de soportar el modelo de memoria segmentada, los cuales son conocidos como registros de segmento:

  6. Lenguaje de Maquina Registros de Segmentos Registro CS. Almacena la dirección inicial del segmento de código de un programa en el registro CS. Esta dirección de segmento, mas un valor de desplazamiento en el registro de apuntado de instrucción (IP), indica la dirección de una instrucción que es buscada para su ejecución Registro DS. La dirección inicial de un segmento de datos de programa es almacenada en el registro DS. En términos sencillos, esta dirección, mas un valor de desplazamiento en una instrucción, genera una referencia a la localidad de un bytes especifico en el segmento de datos. Registro SS. El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y datos. Almacena la dirección de inicio del segmento de pila de un programa en el registro SS. Esta dirección de segmento, más un valor de desplazamiento en el registro del apuntador de la pila (SP), indica la palabra actual en la pila que está siendo direccionada.

  7. Lenguaje de Maquina Registros de Banderas Los registros de banderas sirven parar indicar el estado actual de la maquina y el resultado del procesamiento, Cuando algunas instrucciones piden comparaciones o cálculos aritméticos cambian el estado de las banderas. Las banderas mas comunes son las siguientes: OF (Overflowflag, desbordamiento). Indica el desbordamiento de un bit de orden alto (mas a la izquierda) después de una operación aritmética. DF (Directionflag, Direccion). Designa la dirección hacia la izquierda o hacia la derecha para mover o comparar cadenas de caracteres. IF (Interruptionflag, Interrupcion). Indica que una interrupción externa, como la entrada desde el teclado sea procesada o ignorada.

  8. Lenguaje de Maquina Registros de Banderas TF (Trapflag, Trampa). Examina el efecto de una instrucción sobre los registros y la memoria. Los programas depuradores como DEBUG, activan esta bandera de manera que pueda avanzar en la ejecución de una sola interrupción a un tiempo. SF (Signflag, Signo). Contiene el signo resultante de una operación aritmética (0=positivo y 1= negativo). ZF (Zeroflag, Zero). Indica el resultado de una operación aritmética o de comparación (0= resultado diferente de cero y 1=resultado igual a cero). AF (Auxiliarycarryflag, Acarreo auxiliar). Contiene un acarreo externo del bit 3 en un dato de 8 bits, para aritmética especializada PF (Parityflag, Paridad). Indica paridad par o impar de una operación en datos de ocho bits de bajo orden (mas a la derecha). CF (Carryflag, Acarreo). Contiene el acarreo de orden mas alto (mas a la izquierda) después de una operación aritmética; también lleva el contenido del ultimo bit en una operación de corrimiento o rotación.

  9. Lenguaje de Maquina - Interrupciones Una interrupción es una operación que invoca la ejecución de una rutina específica que suspende la ejecución del programa que la llamó, de tal manera que el sistema toma control del computador colocando en el stack el contenido de los registros CS e IP. El programa suspendido vuelve a activarse cuando termina la ejecución de la interrupción y son restablecidos los registros salvados.  Existen dos razones para ejecutar una interrupción: (1) intencionalmente como petición para la entrada o salida de datos de un dispositivo, y (2) un error serio y no intencional, como sobreflujo o división por cero.

  10. Lenguaje de Maquina - Interrupciones Interrupción 10h Propósito: Llamar a diversas funciones de video del BIOS. Sintaxis: Int 10h Esta interrupción tiene diversas funciones, todas ellas nos sirven para controlar la entrada y salida de video, la forma de acceso a cada una de las opciones es por medio del registro AH. Funciones comunes de la interrupción 10H. 02h Selección de posición del cursor 09h Escribe atributo y caracter en el cursor 0Ah Escribe caracter en la posición del cursor 0Eh Escritura de caracteres en modo alfanumérico

  11. Lenguaje de Maquina - Interrupciones Interrupción 16h Propósito: Manejar la entrada/salida del teclado. Sintaxis: Int 16h son llamadas utilizando el registro AH. Funciones de la interrupción 16H 00h Lee un caracter de teclado 01h Lee estado del teclado

  12. Lenguaje de Maquina - Interrupciones Interrupción 17H Propósito: Manejar la entrada/salida de la impresora. Sintaxis: Int 17H Esta interrupción es utilizada para escribir caracteres a la impresora, inicializarla y leer su estado. Funciones de la interrupción 17h 00h Imprime un caracter ASCII 01h Inicializa la impresora 02h Proporciona el estado de la impresora

  13. Sitios webs utilizados: www.Wikipedia.org www.intel.com www.amd.com www.microsoft.com www.lawebdelprogramador.com http://homepage.mac.com/eravila/asmix86.html http://www.mitecnologico.com/Main/LenguajeEnsamblador

More Related