Como
ya se tiene conocimiento, existen Lenguajes de Alto Nivel y Lenguajes de Bajo
Nivel. Los Lenguajes de Alto Nivel poseen un compilador o un intérprete para
convertir el programa que se ha declarado en un lenguaje que pueda entender la
máquina. A su vez, un Lenguaje de Bajo Nivel tiene un Ensamblador para traducir
el código fuente que se desea a lenguaje máquina; sin embargo, esto no es
suficiente, ya que se necesita un Enlazador, el cual es un programa que se
encarga de convertir el código fuente generado por el Ensamblador en un
ejecutable, pues de lo contrario, sólo tendríamos texto plano sin función, de
esta forma el proceso se completa.
Comentarios en Lenguaje Ensamblador
Estos
van siempre después de “;” (punto y coma), se pueden colocar al principio de
una línea o al lado de una línea de instrucción.
Ejemplo:
1.- ;Todo este texto es un comentario
2.-
mov 14,al ;Esto que está a lado de la
instrucción también es un comentario
Desde
luego, la dimensión de los comentarios no afecta a la ejecución del programa.
Palabras Reservadas
Como
todo lenguaje de programación, éste también las posee:
a a) Nombres de Registros
b b)
Instrucciones Simbólicas
c c)
Directivas
d d)
Operadores
No se utilizan caracteres especiales.
Estructura de un programa en Lenguaje
Ensamblador
title formato -->Indica
el título del programa, en éste caso “formato”, desde luego, el título puede
incluir mayúsculas, minúsculas y números, pero nunca espacios en blanco.
;
************************************ >>Comentario
-->Declaración
del segmento de Pila
pila segment para stack 'stack' àInicia
db
64 dub(?) -->Se
declara que el segmento ocupe una extensión de 64 bytes
“(?)”>>Indica que se reservará dicho
espacio vacío
pila ends àTermina
; ************************************
>>Declaración del
segmento de datos
datos segment para public 'data'
>>Todas las variables que
se utilizarán, se declararán en éste sitio
datos ends
; ************************************
codigo segment para public 'code'
assume
cs:codigo, ds:datos, ss:pila >>Se
indica que los relacione con los registros
ppal proc far >>
Es como el “main” de Java, aquí en Ensamblador es el Proceso Principal
>>Por regla general un
programa se inicia con “far”, pero también puede tener “near”, sin embargo, “far”
se utiliza para el programa principal, mientras que “near” es para un segmento
de código que será utilizado dentro del mismo programa; en éste caso, utilizar “near”
es como crear un método en un lenguaje de Alto Nivel que después será utilizado
por el programa principal cuando sea requerido.
;
Instrucciones obligatorias
>>Sirven para inicializar
el segmento de datos del programa
;--------------------
push ds
mov ax,0
push ax
mov ax,datos
mov ds,ax
;--------------------
;
Instrucciones del usuario
;--------------------
;--------------------
ret
ppal
endp >>Fin
del proceso principal
codigo ends
end ppal
Después
de finalizar un programa en Lenguaje Ensamblador, se guarda con la extensión
.asm
Formato:
title formato
; ************************************
pila segment para stack 'stack'
db 64 dub(?)
pila ends
; ************************************
datos segment para public 'data'
;Declaración de variables a ocupar
datos ends
; ************************************
codigo segment para public 'code'
assume cs:codigo, ds:datos, ss:pila
ppal proc far
; Instrucciones obligatorias
;--------------------
push ds
mov ax,0
push ax
mov ax,datos
mov ds,ax
;--------------------
; Instrucciones del usuario
;--------------------
;--------------------
ret
ppal endp
codigo ends
end ppal