Comando DEF USR

Objetivo:

Especificar la dirección de partida de una subrutina en lenguaje ensamblador para ser llamado desde de memoria por la función USR.

Sintaxis:

DEF USR[n]=integer

Comentarios:

n puede ser cualquier dígito de 0 a 9. El dígito corresponde a la dirección USR rutina siendo especificada. Si n es omitida, DEF USR0 es el predeterminado.

integer es la dirección de compensación de la rutina USR. Si se requieren más de 10 rutinas USR, DEF USR[n] pueden aparecer en el programa cuanta veces sean necesario,redefinir la dirección de inicio USR[n].

Añada el valor de segmento corriente al número entero para obtener la dirección de inicio de la rutina de usuario.

Cuando se llama una Subrutina de Lenguaje ensamblador, la ejecución de programa de GW-BASIC se pausa, y el control es transferido al programa de Lenguaje ensamblador. Cuando aquel programa es ejecutado, el control es devuelto al programa GW-BASIC en el punto de interrupción.

Ejemplos:

.
.
.
190 DEF SEG=0
200 DEF USR0=24000
210 X=USR0(Y^2/2.82)
.
.
.

Las líneas 190 y 200 ponen la dirección absoluta.

La línea 210 llamadas la rutina USR localizada en aquella dirección, y pasa el valor de número entero de la expresión contenida dentro de los paréntesis al programa de usuario (ve USR).


Nota

Esta instruccion es dada principalmente para proveer compatibilidad con otras implementaciones del GW-BASIC. La instruccion más versátil CALL   debería ser usada si esta desmejoramiento en la compatibilidad es sin importancia.


1