1 / 6

TASM: Ensamblador

TASM: Ensamblador Se le llama ensamblador no sólo al lenguaje; sino también al programa que traduce el código fuente escrito en ensamblador, a código objeto, equivalente a los opcodes en lenguaje de máquina.

joie
Télécharger la présentation

TASM: Ensamblador

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. TASM: Ensamblador Se le llama ensamblador no sólo al lenguaje; sino también al programa que traduce el código fuente escrito en ensamblador, a código objeto, equivalente a los opcodes en lenguaje de máquina. En el caso de 8086 y familia, el ensamblador, sea TASM (Borland) o MASM (Microsoft), se encarga de generar los archivos .OBJ que representan el código de máquina asociado al programa fuente en ensamblador. La sintaxis básica para su uso es: TASM <nombre del programa> {opciones} En el nombre del programa, podemos omitir la extensión .ASM, que es la que tenemos por defecto. Por ejemplo, para ensamblar el programa HOLA.ASM, basta la siguiente línea de comandos: C> TASM HOLA

  2. OPCIONES DEL TASM /la Genera un archivo, adicional al .OBJ, con extensión .LST, que muestra un listado detallado del proceso de ensamblado. Entre otras cosas, muestra la asociación existente entre el código fuente y los opcodes generados. /zi Almacena información de símbolos junto con el programa objeto, útil para que el depurador permita ejecutar el código objeto en sincronía con el código fuente. Así, se recomienda que durante el desarrollo de un programa se ejecute TASM con una línea de comandos similar a la siguiente: C> TASM HOLA /zi /la

  3. TLINK: Linker Un archivo .OBJ, si bien contiene ya todo el código de máquina, no puede ser ejecutado todavía por el sistema operativo, pues no contiene información necesaria para el mismo, tal como la memoria requerida. Esto se coloca en un encabezado, que es leído por el sistema para determinar cómo ejecutar el programa. Por otro lado, cuando hacemos un programa en varios módulos, no solamente existe un código objeto sino varios, que debemos combinar o relacionar entre sí. Estos procesos son llevados a cabo por el TLINK; el cual toma como entrada uno o varios archivos .OBJ y genera los archivos ya ejecutables por el sistema, con extensión .COM o .EXE. Se ejecuta en forma similar al TASM, desde la línea de comandos ("prompt"): La sintaxis básica para su uso es: TLINK <nombre del programa o programas> {opciones} En el nombre del programa, podemos omitir la extensión .OBJ, que es la que tenemos por defecto.

  4. TD: Depuración ( Turbo Debuger) Se ejecuta un ambiente amigable de menús; se requiere de ensamblar y ligar con las opciones de depuración (/zi en el TASM y /v en el TLINK) Las funciones más importantes para su uso serán la ejecución por pasos (F7 y F8), examinar los recursos en la ventana de CPU, y visualizar variables por medio de Watch y Evaluate.

  5. Directivas DOSSEG Segmentos del sistema operativos DOS .code segmento de código .data segmento de datos .stack segmento de pila .MODEL tiny segmento de datos y código en el mismo de 64K small segmentos de código y datos separados pero cada uno de 64K medium el código puede ser de más de 64K, el dato solo 64K compact código de 64K y datos de más de esa cantidad large ambos segmentos (datos y codigo mas grandes de 64K),pero no se pueden extender los arreglos de datos a más de 64K huge Igual que large, excepto que los arreglos si pueden exceder 64K

  6. dosseg .model small .stack 50h .data lista db 8,-5,-12,35,-98,3,1 n db 7 .code mov ax,@data mov ds,ax ; inicialización de DS mov cl,n dec cl xor ch,ch mov si,offset lista mov al,[si] otro: inc si cmp al,[si] jl sigue mov al,[si] sigue: loop otro mov ah,4ch ; regresa control al DOS int 21h end

More Related