Operation Manual

Técnicas de programación
13–23
STO(i)
RCL(i)
STO +, –,
×
,
÷
, (i)
RCL +, –,
×
,
÷
, (i)
XEQ(i)
GTO(i)
X<>(i)
INPUT(i)
VIEW(i)
DSE(i)
ISG(i)
SOLVE(i)
³
FN d(i)
FN=(i)
Control de programas con (i)
Dado que el contenido de i puede cambiar cada vez que se ejecuta un programa (o
incluso en diferentes partes del mismo programa), una instrucción de éste como
puede ser
!1
1
L2
2
puede saltar a una etiqueta diferente en momentos diferentes.
Este método mantiene la flexibilidad dejando abierto (hasta que el programa se
ejecuta) qué variable o etiqueta de programa se necesitará (Consulte el ejemplo
siguiente.)
El direccionamiento indirecto es muy útil para contar y controlar bucles. La variable
i
sirve como índice, albergando la dirección de la variable que contiene el número de
control del bucle para las instrucciones DSE y ISG. (Consulte el segundo ejemplo que
aparece a continuación.)
Ejemplo: elección de subrutinas con (i).ʳ
El programa "Ajuste de curvas" del capítulo 16 utiliza direccionamiento indirecto
para determinar el modelo que se debe utilizar para calcular los valores
aproximados de
x e y (diferentes subrutinas calculan x e y para los distintos modelos).
Observe que i se almacena y, a continuación, se direcciona indirectamente en partes
totalmente diferentes de un programa.
Las primeras cuatro rutinas (S, L, E, P) del programa especifican el modelo de ajuste
de curvas del programa que se va a utilizar y asignan un número (1, 2, 3, 4) a cada
uno de estos modelos. Seguidamente, este número se almacena durante la rutina Z,
el punto de entrada común para todos los modelos:
' ! L
La rutina Y utiliza i para llamar a la subrutina adecuada (por modelo) y calcular los
valores aproximados de
x e y. La línea Y0003 llama a la subrutina para que calcule