UNIDAD 3: MODULARIZACIÓN
3.1
Procedimientos
Un
procedimiento es una secuencia de instrucciones que en conjunto llevan a cabo
una tarea específica.
En
programación un procedimiento es un segmento de código que cuenta con
instrucciones a las cuales se puede acceder desde cualquier parte del programa
y una vez se termina la ejecución de estas, el programa continua con su
ejecución normal, tomando el control la siguiente línea después de la llamada
al procedimiento. Los procedimientos tienden a ser grupos de instrucciones que
se necesitara ejecutar más de una vez dentro de un programa, ya que un
procedimiento puede ser llamado en cualquier momento durante la ejecución del
programa principal, la cantidad de veces que sea necesario sin necesidad de
reescribir el código.
En
ensamblador los procedimientos están conformados por las siguientes partes:
Declaración del procedimiento:
Los
procedimientos en ensamblador se declaran mediante la sintaxis
nombreprocedimiento Proc [far/near] dependiendo de si es un procedimiento
cercano o lejano.
Código del procedimiento:
Dentro
del procedimiento se escribe el código de ensamblador que se quiere utilizar.
Directiva de regreso:
Antes
del final de un procedimiento en ensamblador se escribe la directiva de regreso
ret,, la cual regresa el control a la línea desde donde fue llamado el
procedimiento.
Terminación del procedimiento:
Para
terminar un procedimiento se escribe el nombre del procedimiento seguido de la
palabra reservaba endp.
Existen
dos tipos de procedimientos que pueden utilizarse dentro de ensamblador, estos
son los internos y los externos.
Procedimientos Internos:
Estos
procedimientos son aquellos que son declarados dentro del mismo archivo de
programa que serán llamados, también se les llama procedimientos locales.
Para
utilizarlos basta con escribir la palabra reservada call seguida del nombre del
procedimiento a utilizar.
Procedimientos Externos:
Los
procedimientos externos se crean de la misma forma que los internos pero tienen
la diferencia de que están en archivos separados al programa de donde el
procedimiento es llamado, por lo que se necesitan instrucciones extra para
poder utilizarlos, las cuales son las siguientes:
PUBLIC:
Es
necesario declarar como publico el procedimiento que se desea utilizar para que
sea posible acceder a él desde otro programa.
EXTRN:
Permite
abrir procedimientos desde otro programa aunque no se encuentre enlazado
directamente.
INCLUDE:
Enlaza
el programa que llama el procedimiento con el que lo contiene, permitiendo
utilizarlo como si fuera un procedimiento propio.
Ejemplo:
public imprime → Procedimiento dentro del primero archivo declarado como publico.
imprime proc far → Declaracion del procedimiento.
mov ah,09h → Código del procedimiento
int 21h
ret → Directiva de regreso.
imprime endp → Fin del procedimiento.
public imprime → Procedimiento dentro del primero archivo declarado como publico.
imprime proc far → Declaracion del procedimiento.
mov ah,09h → Código del procedimiento
int 21h
ret → Directiva de regreso.
imprime endp → Fin del procedimiento.
extrn
imprime:near → Se
incluye el procedimiento externo imprime en el
segundo archivo.
call imprime → Se llama al procedimiento como si fuera local.
call imprime → Se llama al procedimiento como si fuera local.
3.2 Macros.
Una
macro es un conjunto de instrucciones que pueden ser llamadas utilizando su
nombre para ejecutarse dentro de un programa, estas solo se escriben una vez
dentro del código y pueden utilizarse las veces que sea necesario.
En
ensamblador la diferencia entre los procedimientos y las macros es que las
macros tienen la posibilidad de utilizar parámetros por lo que pueden llevar a
cabo tareas que los procedimientos no podrían.
Las
macros constan de tres partes que las definen:
Declaración:
El
inicio de una macro se declara escribiendo el nombre que tendrá, seguido de la
palabra reservada MACRO y opcionalmente, puede contener parámetros después.
Cuerpo:
Contiene
todas las instrucciones que ejecutara la macro cuando sea llamada dentro del
programa en ejecución.
Fin:
Toda
macro debe terminar con la palabra reservada ENDM para indicar el fin de la
misma.
Al
igual que con los procedimientos, existen dos tipos de macros que son externas
e internas, pero son muy fáciles de utilizar de cualquiera de las dos formas,
si se desea utilizar una macro externa se escribe la palabra Include seguida
del nombre del archivo de texto donde están guardadas las macros antes del
código del programa.
Ejemplo:
Include
Macro.txt
→ Se enlaza con el archivo Macro.txt.
.model
small
→
Declaración del tamaño del programa.
.stack
64
→
Declaración de la pila.
.Data
→
Inicio del segmento de datos.
.Code
→
Inicio del segmento de código.
Macro1
→
Se llama a la macro Macro1.
.Exit
→ Inicio del segmento final.
End
→ Fin del programa.
Comentarios
Publicar un comentario