You are on page 1of 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 programación) ya que facilita el ambiente de programación 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 algún 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, código y pila en un segmento. El modelo SMALL exige que el código quepa en un segmento de 64K y los datos en otro segmento de 64K. La directiva .MODELL genera automáticamente 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 código son: .STACK [tamaño] .DATA .CODE [nombre] Cada una de estas directivas hace que el ensamblador genere el enunciado SEGMENT necesario y su correspondiente ENDS. Los nombres por omisión de los segmentos (que usted no tiene que definir) son STACK, DATA y TEXT (para el segmento de código). page 60,132 TITLE P04ASM2 (EXE) Operaciones de mover y sumar ;------------------------------------------------------------------------.MODEL SMALL .STACK 64 .DATA ;------------------------------------------------------------------------.CODE BEGIN PROC FAR BEGIN ENDP END BEGIN

Una vez que tenemos confirmado lo que queremos que realice nuestro programa. Bien ahora se describira lo siguientes pasos para correr (compilar. que antes que nada debemos tener instalado en nuestro ordenador el software Tasm y Tlink. y lo guardamos en nuestra carpeta antes prevista. ligar y ejecutar) un programa en Lenguaje Ensamblador.CX END . Mi dirección queda de la siguiente manera: c:\LenguajeEnsamblador Una vez que tengo mi carpeta y mis archivos contenidos dentro de comenzare. finalmente.0 MOV SI. Paso 1. . Iniciamos con el análisis de lo que realizara nuestro programa.Guardar programa terminado de ensamblador Antes de guardar nuestro programa finalizado.MODEL TINY .AX MOV DI. Los cuales se encontraran en una carpeta en nuestra unidad C: a la cual podemos asignarle cualquier nombre. Este es el código de mi programa.CODE .BX MOV BP. es necesario conocer algunos conceptos primero:   TASM: El Turbo Assembler (TASM). ocupo el bloc de notas). En mi caso utilizare el nombre de LenguajeEnsamblador para llamar a mi carpeta.X se obtiene directamente el fichero EXE ya que invoca automáticamente al linkador).0000H MOV CX. Paso 2. los convierte en módulo ejecutable de tipo EXE (empleando el ML de MASM 6. Recordando. un paquete ensamblador principalmente destinado a la plataforma del IBM PC y sus compatibles.0 MOV BX. lo redactamos en un editor de texto (en mi caso. TLINK: El enlazador o linkador permite combinar varios módulos objeto. realizando las conexiones entre ellos y.STARTUP MOV AX.

Nota.Una vez situados en la dirección correcta.ASM para que pueda funcionar de manera correcta.Entramos al símbolo del sistema (MS-DOS) nos direccionamos en donde se encuentra nuestra carpeta Paso 4.TXT la cual debes cambiar por .ASM . ya que el editor lo guarda con la extensión. Para la compilación se debe ejecutar la siguiente instrucción: tasm /zi nombre_del_programa.ASM Nota: el nombre del archivo no debe tener espacios ni accederse a el número de letras. al guardar el archivo debemos darle un nombre (en mi caso será ejemplo1) recuerda tener cuidado y cambiar la extensión.ASM.ASM lo cual quedaría de la siguiente manera: ejemplo1. Al darle el nombre a tu archivo debes agregar al nombre la extensión.. Recuerda guardarlo en tu carpeta designada para dichos archivos.. nos dirigimos a compilar nuestro programa.ASM En mi ejemplo quedaría de la siguiente manera: c:\LenguajeEnsamblador>tasm /zi ejemplo1. (en mi caso C:\LenguajeEnsamblador) Paso 3. ¿Como hacemos esto? Bueno. ya que debe hacerse con la extensión . Ahora si Guardar. Tener cuidado al guardar el archivo.

sin extensiones. Paso6.) Con esto se ah realizado la compilación de nuestro programa y esta listo para ser ligado. Paso 5.Este es el ultimo paso. tlink/v nombre_del_programa En mi ejemplo quedaría de la siguiente manera: c:\LenguajeEnsamblador>tlink/v ejemplo1 Ya tenemos ligado nuestro programa.Una vez compilado nos aparecerá un reporte.. el cual nos muestra si hay errores en nuestras líneas de código. Solo escribimos el nombre de nuestro programa. nombre_del_programa En mi ejemplo quedaría de la siguiente manera: Ejemplo1 . Esto lo haremos con la siguiente instrucción..Ahora vamos a ligar nuestro programa. . la ejecución del programa. Esto lo haremos con la siguiente instrucción. En mi caso no tengo errores.

Nombrar un programa. . Editar programa en Ensamblador Para realizar futuras modificaciones en nuestro programa ya guardado. 5 y 6 con los cambios ya realizados al programa. Rastrear la ejecución de una instrucción. cambiar lo que queremos modificar y guardar con la misma extensión (los cambios se sobre escribirán en el mismo archivo). Mostar estados de la memoria expandida. Mostar el contenido de uno o más registros. Proceder a ejecutar un conjunto de instrucciones relacionadas. Escribir o grabar un programa en disco. solo es necesario abrir nuestro archivo en bloc de notas o notepad++. Para correr nuestro programa solo debemos repetir nuevamente los pasos 3.¡Listo! Hemos concluido con la realización de la compilación. Correr el programa ejecutable que se encuentra en memoria. Asignar memoria expandida. ligamento y ejecución de un programa en Lenguaje Ensamblador. COMANDOS DEBUG Los comandos que proporciona DEBUG nos permiten realizar diferentes operaciones útiles. iniciando en una localidad específica. 4. Desasignar memoria expandida. “desensamblar” código máquina y pasarlo a código simbólico. Asignar páginas de memoria expandida. Salir de la selección con DEBUG. La mayoría de los comandos de DEBUG ejecutan una acción y vuelven al indicador. COMANDO A D E G N P Q R T U W XA XD XM XS DESCRIPCION Ensamblar instrucciones simbólicas y pasarlas a código de máquina Mostrar el contenido de un área de memoria Introducir datos en la memoria.