jueves, 23 de enero de 2014

Sub rutina


La operación Llamar a subrutina (CALL) transfiere el control a la subrutina (SBR_n). Esta operación se puede utilizar con o sin parámetros. Una vez ejecutada la subrutina, el control vuelve a la operación que sigue a la llamada de la subrutina (CALL).

El límite máximo de parámetros de entrada/salida en cada llamada a subrutina es de 16. Si intenta cargar un programa que exceda este límite, ocurrirá un error.

Si ha asignado un nombre simbólico a la subrutina (por ejemplo, NOMBRE_SBR), éste aparecerá en la carpeta "Subrutinas" del árbol de operaciones.

Los valores de parámetros se asignan de la siguiente forma a la memoria Local en la subrutina:
1.  Los valores de parámetros se asignan a la memoria Local en el
     orden indicado por la operación Llamar a subrutina, comenzando
     esos parámetros en L.0.
2.  Uno a ocho valores binarios de parámetros consecutivos se asignan
     a un sólo byte comenzando en Lx.0 hasta Lx.7.
3.  Los valores de byte, palabra y palabra doble se asignan a
     la memoria Local en bytes (LBx, LWx ó LDx).

En la operación CALL con parámetros, éstos deben concordar exactamente con las variables definidas en la tabla de variables locales de la subrutina. Los parámetros se deben organizar de la siguiente forma: primero los parámetros de entrada, luego los de entrada/salida y, por último, los de salida.

Condiciones de error que ponen ENO a 0 en una operación CALL con parámetros = 0:
0008   Excedida la profundidad máxima de anidado

Nota:  El rótulo informativo de la subrutina en el árbol de operaciones visualiza el nombre de cada par



No hay comentarios:

Publicar un comentario