

ISC. Juan Arturo Ortegon Lemus
Comandos Lenguaje ensamblador
CR EQU 13
LF EQU 0Ah
CR Y LF: Estas constantes no generan código objeto alguno, ya que indican al compilador que cuando encuentren en el código dichas constantes o símbolos, sustituya dichos símbolos por el valor indicado.
EQU: La directiva EQU asigna un nombre simbólico al valor de una expresión. El compilador, cuando encuentre en el código dicho nombre simbólico, lo sustituirá por el valor de la expresión. La expresión indicada puede ser:
1. Una constante numérica.
2. Una referencia de dirección (cualquier modo de direccionamiento).
3. Cualquier combinación de símbolos y operaciones que generen un valor numérico.
4. Otro nombre simbólico.
DATOS SEGMENT Inicio del segmento de datos
MENSAJE DB CR,LF,'Hola Mundo !',CR,LF,'$'
DB:La directiva DB reserva memoria para datos de tipo byte (8 bits), o para una variable de este tipo, inicializando o no dicho byte y los posteriores.
DATOS ENDS ; Fin del segmento de datos
PILA SEGMENT STACK ; Inicio del segmento de pila
DB 64 DUP('PILA')
DUP(expresión), que repite 'n' veces la 'expresión'.
PILA ENDS ; Fin del segmento de pila
CODIGO SEGMENT ; Inicio del segmento de código
pe01_hol PROC FAR ; Inicio procedimiento p1_hola
ASSUME CS:CODIGO,DS:DATOS,SS:PILA ; Asignar segmentos
-
SS: Registro del segmento de pila
-
CS: Registro del segmento de código
-
DS: Registro del segmento de datos
MOV AX,DATOS
MOV Destino,Fuente
Donde Destino es el lugar a donde se moverán los datos y fuente es el lugar donde se encuentran dichos datos.
AX=Dirección del segmento de datos
MOV DS,AX DS=AX. Indicar el segmento de datos
LEA DX,MENSAJE DS:DX = dirección de MENSAJE
LEA destino, fuente
El operando fuente debe estar ubicado en memoria, y se coloca su desplazamiento en el registro índice o apuntador especificado en destino.
MOV AH,9
INT 21H
Para ello, se deposita en el registro AH el número de servicio (9) y se llama a la interrupción 21H (interrupción de servicios estándar del DOS.
MOV AX,4C00H
INT 21H
Después de imprimir la cadena, retorna (sentencia RET (RETurn)), que extrae de la pila la dirección de retorno y modifica IP para saber dónde debe continuar la ejecución.
Este servicio del DOS permite concluir o finalizar el programa, retornando el control al DOS.
pe01_hol ENDP ; Fin del procedimiento p1_hola
CODIGO ENDS ; Fin del segmento código
END pe01_hol ; Empezar a ejecutar el procedimiento p1_hola