Você está na página 1de 5

COMO COMENZAR A PROGRAMAR EN ENSAMBLADOR?

Para comenzar a programar en ensamblador (lenguaje de bajo nivel), es necesario utilizar como herramienta Bloc de Notas, pero se recomienda utilizar el programa NotePad++ (herramienta de programacin) ya que facilita el ambiente de programacin para el usuario. Para ello es necesario conocer los elementos que nuestro programa deber contener siempre que se quiera programar en ensamblador. Directivas simplificadas de segmentos Los ensambladores de MicroSoft y de Borland proporcionan algunas formas abreviadas para definir segmentos. Para usar estas abreviaturas, inicialice el modelo de memoria antes de definir algn segmento. El formato general (incluyendo el punto inicial) es: .MODEL modelo de memoria El modelo de memoria puede ser TINY, SMALL, MEDIUM, COMPACT o LARGE. El modelo TINY esta destinado para uso exclusivo de programas .COM, los cuales tienen sus datos, cdigo y pila en un segmento. El modelo SMALL exige que el cdigo quepa en un segmento de 64K y los datos en otro segmento de 64K. La directiva .MODELL genera automticamente el enunciado ASSUME necesario. Los formatos generales (incluyendo el punto inicial) para las directivas que define los segmentos de la pila, de datos y de cdigo son: .STACK [tamao] .DATA .CODE [nombre] Cada una de estas directivas hace que el ensamblador genere el enunciado SEGMENT necesario y su correspondiente ENDS. Los nombres por omisin de los segmentos (que usted no tiene que definir) son STACK, DATA y TEXT (para el segmento de cdigo). page 60,132 TITLE P04ASM2 (EXE) Operaciones de mover y sumar ;------------------------------------------------------------------------.MODEL SMALL .STACK 64 .DATA ;------------------------------------------------------------------------.CODE BEGIN PROC FAR BEGIN ENDP END BEGIN

Guardar programa terminado de ensamblador Antes de guardar nuestro programa finalizado, es necesario conocer algunos conceptos primero: TASM: El Turbo Assembler (TASM), un paquete ensamblador principalmente destinado a la plataforma del IBM PC y sus compatibles. TLINK: El enlazador o linkador permite combinar varios mdulos objeto, realizando las conexiones entre ellos y, finalmente, los convierte en mdulo ejecutable de tipo EXE (empleando el ML de MASM 6.X se obtiene directamente el fichero EXE ya que invoca automticamente al linkador).

Bien ahora se describira lo siguientes pasos para correr (compilar, ligar y ejecutar) un programa en Lenguaje Ensamblador. Recordando, que antes que nada debemos tener instalado en nuestro ordenador el software Tasm y Tlink. Los cuales se encontraran en una carpeta en nuestra unidad C: a la cual podemos asignarle cualquier nombre. En mi caso utilizare el nombre de LenguajeEnsamblador para llamar a mi carpeta. Mi direccin queda de la siguiente manera: c:\LenguajeEnsamblador Una vez que tengo mi carpeta y mis archivos contenidos dentro de comenzare. Paso 1. Iniciamos con el anlisis de lo que realizara nuestro programa. Paso 2. Una vez que tenemos confirmado lo que queremos que realice nuestro programa, lo redactamos en un editor de texto (en mi caso, ocupo el bloc de notas); y lo guardamos en nuestra carpeta antes prevista. Este es el cdigo de mi programa. .MODEL TINY .CODE .STARTUP MOV AX,0 MOV BX,0000H MOV CX,0 MOV SI,AX MOV DI,BX MOV BP,CX END

Nota. Tener cuidado al guardar el archivo, ya que debe hacerse con la extensin .ASM para que pueda funcionar de manera correcta. Como hacemos esto? Bueno, al guardar el archivo debemos darle un nombre (en mi caso ser ejemplo1) recuerda tener cuidado y cambiar la extensin, ya que el editor lo guarda con la extensin.TXT la cual debes cambiar por .ASM. Al darle el nombre a tu archivo debes agregar al nombre la extensin.ASM lo cual quedara de la siguiente manera: ejemplo1.ASM Nota: el nombre del archivo no debe tener espacios ni accederse a el nmero de letras. Ahora si Guardar. Recuerda guardarlo en tu carpeta designada para dichos archivos. (en mi caso C:\LenguajeEnsamblador) Paso 3.- Entramos al smbolo del sistema (MS-DOS) nos direccionamos en donde se encuentra nuestra carpeta

Paso 4.- Una vez situados en la direccin correcta, nos dirigimos a compilar nuestro programa. Para la compilacin se debe ejecutar la siguiente instruccin: tasm /zi nombre_del_programa.ASM En mi ejemplo quedara de la siguiente manera: c:\LenguajeEnsamblador>tasm /zi ejemplo1.ASM

Una vez compilado nos aparecer un reporte, el cual nos muestra si hay errores en nuestras lneas de cdigo.

En mi caso no tengo errores. ;) Con esto se ah realizado la compilacin de nuestro programa y esta listo para ser ligado. Paso 5.- Ahora vamos a ligar nuestro programa. Esto lo haremos con la siguiente instruccin. tlink/v nombre_del_programa En mi ejemplo quedara de la siguiente manera: c:\LenguajeEnsamblador>tlink/v ejemplo1

Ya tenemos ligado nuestro programa. Paso6.- Este es el ultimo paso, la ejecucin del programa. Esto lo haremos con la siguiente instruccin. Solo escribimos el nombre de nuestro programa, sin extensiones. nombre_del_programa En mi ejemplo quedara de la siguiente manera: Ejemplo1

Listo! Hemos concluido con la realizacin de la compilacin, ligamento y ejecucin de un programa en Lenguaje Ensamblador. Editar programa en Ensamblador Para realizar futuras modificaciones en nuestro programa ya guardado, solo es necesario abrir nuestro archivo en bloc de notas o notepad++, cambiar lo que queremos modificar y guardar con la misma extensin (los cambios se sobre escribirn en el mismo archivo). Para correr nuestro programa solo debemos repetir nuevamente los pasos 3, 4, 5 y 6 con los cambios ya realizados al programa.

COMANDOS DEBUG Los comandos que proporciona DEBUG nos permiten realizar diferentes operaciones tiles. La mayora de los comandos de DEBUG ejecutan una accin y vuelven al indicador. COMANDO A D E G N P Q R T U W XA XD XM XS DESCRIPCION Ensamblar instrucciones simblicas y pasarlas a cdigo de mquina Mostrar el contenido de un rea de memoria Introducir datos en la memoria, iniciando en una localidad especfica. Correr el programa ejecutable que se encuentra en memoria. Nombrar un programa. Proceder a ejecutar un conjunto de instrucciones relacionadas. Salir de la seleccin con DEBUG. Mostar el contenido de uno o ms registros. Rastrear la ejecucin de una instruccin. desensamblar cdigo mquina y pasarlo a cdigo simblico. Escribir o grabar un programa en disco. Asignar memoria expandida. Desasignar memoria expandida. Asignar pginas de memoria expandida. Mostar estados de la memoria expandida.

Você também pode gostar