Tutoriales de ensamblador

En ensamblador existen dos tipos de estructuras para desarrollar un programa en ensamblador.

Pero antes tienes que tener las herramientas para ensamblar tus programas las cuales puedes descargar al final de este tutorial:
MASM.EXE
: ensambla el programa y crea el archivo OBJ.
LINK.EXE: linkea el archivo OBJ y hace el archivo ejecutable.
ML: ejecuta los dos archivos de arriba en una sola pasada, es una forma mas rápido de ensamblar.
Intrlist: es una biblioteca de interrupciones para los micros.
NOTEPAD2: es un editor que marca la sintaxis de registros, números, etc. 

La primera es una estructura básica de programación:

.model
      TINY    ; desde MASM 6.0 usado para programas .COM
      SMALL   ; todos los datos en un segmento y todo el código en un segmento
      MEDIUM  ; todos los datos en un segmento, pero el código en mas de un segmento
      COMPACT ; datos en más de un segmento, pero código en un segmento
      LARGE   ; Datos y código, en mas de un segmento, pero los areglos no pueden
              ; exceder 64K
      HUGE    ; Datos y código, ambos en más de un segmento, y los arreglos pueden
              ; exceder 64K

.stack

.data  

Definicion de datos

directiva  descipcion                MASM 6.0               Rango
DB         Definir Byte                BYTE      1 byte    +127, -128
DW         Definir una palabra         WORD      2 bytes   +32,767, -32,768
DD         Definir doble palabra       DWORD     4 bytes   +2,147,483,647, -2,147,483,648
DF         Definir palabra larga       FWORD     6 bytes   uso para 386 y posteriores
DQ         definir palabra cuadruple   QWORD     8 bytes  
DT         definir diez bytes          TWORD    10 bytes   proposito para valores numericos
                                                           empacados BCD en coprocesqadores

nombre      dn       expresion
FLD1        DB         ?           ; elemento no inicializado
FLD2        DB         25          ; elemento inicializado
FLD3        dB         10 DUP (?)  ; diez palabras no inicializadas
FLD4        dB         5 DUP (14)  ; cinco palabras con 0E0E0E0E0E hexadecimal

.code

.startup  ; inicio de código de programa

identificador    operacion    operando     comentario

directiva        DB           1            ; comienza con punto y coma
instruccion      MOV          AX,0         ; comienza con punto y coma


.exit     ; sustituye datos de retorno al DOS

end       ; fin del programa

 

Esta estructura es la mas fácil de usar y la que mas se utiliza. Pero tambien existe esta otra:

page 60,132
TITLE p04asm1 (EXE) operaciones de mover y sumar
;-----------------------------------------------------
STACKSG SEGMENT PARA STACK ´Stack´
        DW 32 DUP(0)      
STACKSG ENDS
;-----------------------------------------------------
DATASG SEGMENT PARA ´Data´
       FLDA DW 250
       FLDB DW 125
       FLDC DW ?
DATASG ENDS
;-----------------------------------------------------
CODESG SEGMENT PARA ´Code´
BEGIN PROC FAR
      ASSUME SS:STACKSG,DS:DATASG, CS:CODESG
      MOV AX,DATASG     ; SE ASIGNA DIRECCION DE DATASG
      MOV DS,AX         ; EN REGISTRO DS

      MOV AX,FLDA       ; MOVER 0250 A AX
      ADD AX,FLDB       ; SUMAR 0125 A AX
      MOV FLDC,AX       ; ALMACENAR SUMA EN FLDC
      MOV AX,4C00H      ; SALIDA A DOS
      INT 21H
BEGIN ENDP              ; FIN DE PROCEDIMIENTO
CODESG ENDS             ; FIN DE SEGMENTO
END BEGIN               ; FIN DE PROGRAMA

 

Autor: elgame(fuente:mis-algoritmos.com) DescargarDescargar

Comentarios en "Dos tipos de estructura de un programa en ensamblador"

Table 'programa_programas.t_comentarios' doesn't exist