Unidad 3.- Modulacion
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 público.
|
imprime proc far →
|
Declaración 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
|
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:
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