Operation Manual

Seite 21-59
Beispiel – Berechnen der oben definierten Summenbildung S
Das START…NEXT-Konstrukt hat einen Index, auf dessen Wert der Anwender
nicht zugreifen kann. Da für die Berechnung aber der Index selbst erforderlich
ist (in diesem Fall k), erstellen wir einen eigenen Index k, der innerhalb der
Schleife, jedes Mal wenn das Programm die Schleife durchläuft, erhöht wird.
Nachfolgendes Programm stellt eine Möglichkeit dar, S zu berechnen:
« 0. DUP n S k « 0. n START k SQ S + 1. k STO+ S STO
NEXT S S TAG » »
Geben Sie das Programm in Ihren Taschenrechner ein und speichern Sie dieses
unter @@@S1@@@.
Nachfolgend eine kurze Erläuterung zur Arbeitsweise des Programms:
1. Das Programm benötigt als Eingabe eine Ganzzahl. Vor Ausführen des
Programms befindet sich diese Zahl (n) in Stack-Ebene 1. Das Programm
wird gestartet.
2. Eine Null wird eingegeben und n in die Stack-Ebene 2 geschoben.
3. Der Befehl DUP, der über die Tastenfolge ~~dup~ eingegeben
werden kann, kopiert den Inhalt der Stack-Ebene 1, verschiebt alle Stack-
Ebenen nach oben und schreibt die gerade erstellte Kopie in Stack-Ebene
1. Nachdem DUP ausgeführt wurde, befindet sich n in Stack-Ebene 3 und
die Ebenen 1 und 2 enthalten Nullen.
4. Der Programmcode n S k speichert die Werte von n, 0 und 0 in den
lokalen Variablen n, S, k. Man sagt, dass die Variablen n, S und k
initialisiert
wurden (S und k auf 0 und n auf den Wert, den der Anwender
ausgewählt hat).
5. Der Programmcode 0. n START beschreibt eine START-Schleife deren
Index die Werte 0, 1, 2, …, n annehmen wird.
6. Die Summe S wird durch den folgenden Programmcode um k
2
erhöht: k
SQ S +
7. Der Index k wird durch den folgenden Programmcode um 1 erhöht: 1. k
+
8. An dieser Stelle stehen die aktuellen Werte für S und k in den Stack-
Ebenen 2 und 1. Der Programmcode ‘k‘ STO speichert den Wert der
Stack-Ebene 1 in die lokale Variable k. Danach steht der aktuelle Wert