Você está na página 1de 13

Arquitectura Computadoras

El Lenguaje
Ensamblador

Arquitectura Computadoras

Descripcin del Lenguaje


Ensamblador
Los programas fuente escritos utilizan un formato para su escritura.
El formato que utiliza INTEL, divide cada lnea del lenguaje ensamblador en
los siguientes campos:
ETIQUETA
COD. DE OP.
OPERANDO
COMENTARIOS

El campo de etiqueta es opcional y representa el nombre de la lnea.

Generalmente las lneas que son el destino de salto o bifurcaciones


tendrn entradas en el campo de etiqueta.

El campo de cdigo de Operacin, contiene el nemotcnico del cdigo de


operacin de la instruccin que se va a ejecutar.

El campo de operando, da el dato con el que se va a operar el cdigo de


operacin especificado. El campo de operando, a veces se denomina
argumento.

El campo de comentarios puede contener informacin til para explicar la


funcin de la instruccin . Los comentarios son opcionales, pero su uso
documenta el programa.
2

Arquitectura Computadoras

Ejemplo:
DATA

MOV

A, M

;ENTRAR DATO AL ACUMULADOR

Etiqueta: Contiene la entrada DATA. Este es el <<nombre>> de esta


lnea. Probablemente es el destino de una instruccin de bifurcacin
posterior o anterior.
Cdigo de operacin. Contiene la entrada MOV, esta dice a la CPU que
es una instruccin de transferencia de datos. La CPU entonces busca el
siguiente campo de operando para encontrar la fuente y destino de la
transferencia del dato.
Campo de operando. Contiene la entrada A, es (acumulador) el destino
del dato mientras que la memoria M es la fuente. La posicin esta indicada
por el registro par HL de esta instruccin de registro directo.
Campo comentario. Contiene la entrada <<entrar datos al
acumulador>>, este campo describe que ocurre cuando se ejecuta la
instruccin. En este caso, el dato es introducido en el acumulador desde
una posicin de MEM sealada por el registro par HL. El punto y coma (;)
se utiliza como delimitador para separar el campo del operando del campo
de comentario.
3

Arquitectura Computadoras

Escritura de un Programa en Assembler


Definir y analizar
el problema.

Generar la versin
en lenguaje
maquina
del programa

Dibujar el diagrama
de flujo de la

solucin del problema.

Escribir el
programa
en lenguaje
ensamblador

Depurar
el programa

Documentar
el programa.

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador

Son varios los procedimientos que pueden seguir en la


creacin de un programa en ensamblador, uno de ellos
puede ser como se indica:
Se elige un editor de textos sin formato ( Edit del D.O.S.
por ejemplo, con el Word pero se graba como TEXTO
modo D.O.S.)
Se crea un archivo con <<nombre>> con una extensin
ASM.
Ejem1.asm
Se escribe en el archivo todo el programa en formato
ensamblador y posteriormente se graba con el mismo
nombre.
5

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador

Se copia el archivo creado (ejem1.asm) en la


carpeta BIN del programa TASM.

Se ensambla el programa de la siguiente manera.


C:\TASM <<nombre del archivo>>
C:\TASM ejem1.asm

Al ejecutarse el TASM, esta va a ensamblar el


cdigo fuente y generar el cdigo objeto.

Si la compilacin fue realizada sin problemas, se


tendr un mensaje como el siguiente:
6

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador
C:\Tasm>tasm ejem1.asm (ENTER)
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992
Borland International
Assembling file:
ejem1.asm
Error messages:
None
Warning messages:
None
Passes:
1
Remaining memory: 453k
7

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador

En el siguiente paso, se hace el enlace con las


libreras internas y se crea el archivo
ejecutable, de la siguiente manera:
C:\TASM\BIN> TLINK ejem1

<enter>

El linker se encarga de asignar localidades de


memoria absolutas para relocalizar al cdigo
objeto. Tambin permite el desarrollo de
cdigos modulares ya que con l es posible
cambiar mdulos individuales y para producir
un programa completo.
8

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador

Si al crear el enlace no hubo problemas,


se tendr un mensaje como el siguiente:
Turbo Link Version 5.1 Copyright (c) 1992
Borland
International
Warning: No stack

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador

De esta manera se ha creado un archivo


ejecutable con extensin (ejem1.exe), el cual
ejecutar el programa que se escribi.
Despus que se tiene el programa se puede
emplear el comando DEBUG (Depurador).
Este programa es til durante la fase de
desarrollo de programas. Tiene caractersticas
que permiten al usuario ejecutar, por ejemplo
un programa paso a paso y examinar
dinmicamente como cambia la memoria.
10

Arquitectura Computadoras

Procedimientos para crear un programa


en ensamblador

Tambin permite observar las banderas y la


ejecucin del programa desde un punto
determinado (break point) monitoreando los
registros.

Emplear DEBUG /? Para ver los


adicionales que se pueden escribir

comandos

11

Arquitectura Computadoras

Ejemplos de Programas en
Ensamblador (EJEM1.ASM)
CODE SEGMENT PUBLIC 'CODE'
ORG 100H
ASSUME CS:CODE, ES:CODE, DS:CODE, SS:CODE
Empieza:
; Etiqueta de comienzo de programa
Jmp Cdigo
Mensaje Db 'BIENVENIDOS AL LENGUAJE ENSAMBLADOR !!!!!.$'
Cdigo:
mov Dx, offset Mensaje
; Direccin de Mensaje
mov Ah, 9
; en Dx para poder desplegarlo
Int 21h
; a travs de la Int 21 de MS-DOS.
mov ax,4c00h
; Regresa a MS-DOS por medio de la
int 21h
; funcin 4c.
CODE ENDS
END Empieza
; Fin del programa
12

Arquitectura Computadoras

Ejemplos de Programas en
Ensamblador

Al compilarlo y enlazarlo dar un mensaje en la pantalla de:

BIENVENIDOS AL LENGUAJE ENSAMBLADOR !!!!!.

13

Você também pode gostar