Download - Lenguaje ensamblador
Lenguaje EnsambladorProcesador Intel 8086
Facultad de ciencias de la administraciónCarrera: Licenciatura en Sistemas
Cátedra: Arquitectura de ComputadorasAño: 2015
Profesor: Ruiz, José María
Procesador Intel 8086El 8 de Junio de 1978, Intel presentó al público el chip 8086 procesador que se convertiría en la base para el actual conjunto de instrucciones de arquitectura x86, dando inicio a la historia moderna de las CPUs de propósito general.
Registros
Lenguaje ensambladorSi una persona quisiera desarrollar un programa para un microprocesador se le dificultaría mucho pensar las instrucciones en términos de números ya que ésta no es la forma natural del pensamiento humano, por lo que es más conveniente pensar el programa en un lenguaje simbólico llamado Ensamblador. En este lenguaje, una instrucción no está representada por un número, sino que se representa por una palabra corta que nos dan una idea muy clara de la instrucción que se trata, a esta palabra se le conoce como Mnemónico.
Operaciones
Si tomamos una instrucción en un lenguaje de alto nivel ejemplo: X = X + Y
Para realizar esto en lenguaje maquina deberíamos utilizar un serie de instrucciones.
Suponiendo que X se encuentra en la posición 513 e Y en la 5141 - Cargar un registro con el contenido de una posición de
memoria 5132 - Sumar al registro el contenido de otra posición de memoria
5143 - Grabar el contenido del resultado en la posición 513
Lenguaje ensamblador Cada microprocesador tiene su propio lenguaje maquina. Es usado principalmente porque hay aplicaciones o programas que
deben tratar directamente con los registros de la máquina, la memoria, dispositivos de E/S, etc.
La traducción de los nemónicos a código máquina entendible por el CPU la lleva a cabo un programa ensamblador.
Representación de las instruccionesLos operandos también se representan simbólicamente.Ejemplo :
ADD sumarSUB restar
ADD C , BDonde se esta diciendo que se quiere sumar el contenido del operando C con
el del operando BADD CSumar C con el acumulador y depositarlo en el acumulador
¿La CPU puede interpretar y ejecutar estos códigos?
No. Debemos utilizar un programa que convierta los codOp y las referencias a operandos a código binario.
Tipos de Operaciones
De transferencia de datos. Ej. MOV A,B Operaciones aritméticas y lógicas. Ej. ADD A,B De salto. Ej. JMP De llamada y retorno a subrutinas. Ej. CALL De E/S. Ej. OUT
Interrupciones
Una interrupción es un evento no programado que altera el flujo normal de ejecución de una tarea.
La rutina de interrupción se ejecuta y por lo regular regresa el control al procedimiento que fue interrumpido, el cual entonces reasume su ejecución.
Comparación
SITUACIONES IDENTIFICADAS
a) Cada artefacto sonó de diferente manera, o sea, pudo ser identificado entre otros dispositivos.
b) Se dejo en pausa una tarea sin perderla.
c) Se preservo la información de la primera tarea, por lo tanto cuando retomó la conversación sabía de que estaba hablando.
;------------- Ejer1 ---------------------------------------
; Muestra el mensaje en pantalla 'Arquitectura de Computadoras'
;-----------------------------------------------------------.MODEL SMALL.STACK 100h.DATA TEXTO DB 'Arquitectura de Computadoras',CR,LF, '$' ; El carácter '$' indica fin de string
CR EQU 13 ; Agrega carácter enter al textoLF EQU 10 ; Agrega carácter salto de línea.CODEinicio:
MOV AX, @DATA ;Carga en AX la dirección del segmento datos
MOV DS,AX ;Copia AX a DS
LEA DX,TEXTO ;carga la dirección del inicio de TEXTO en el;registro DX. También se puede hacer MOV DX,Offset TEXTOMOV AH,9 ;parámetro para mostrar por pantalla
INT 21h
MOV AH,4ch ;parámetro para retorno al Sistema Operativo
INT 21h
END inicio
Bibliografía
Murdoca, Miles J.; Heuring, Vincent P. Principios de Arquitectura de Computadoras, 1ra. edición. Buenos Aires, Editorial Pearson Education, 2002.
Stallings, William. Organización y Arquitectura de Computadores, 5ta. Edición. Madrid, Editorial Prentice Hall, 2000.