SPRUNGBEFEHLE
Beispiel: Erstellen Sie eine Programmtolge, mit deralle eingehenden Zahlen
summiert und die positiven Werte ausgedruckt werden. Die Summe soll
nach jeder Eingabe ausgewiesen werden. Die Programmeingabe erfolgt ab
Speicherplatz 14.
Speicherplatz
und Befehlssymbol
Tastenfolge
Bemerkungen
Drücken Sie [2nd] [CP].
wenn der Rechner sich
außerhalb des Learn-Modus
befindet, um das vorherige
Programm zu löschen und
eine Doppelbelegung von
Label A zu vermeiden.
O15LBL
[LBL]
016A
[A]
O171NV
[INV]
O18ST.F
[2nd} [Str]
01903
3
020X=T
[2nd][xt])
"Ist die Zahl O oder positiv"?
021B
[8]
Wenn ja, Sprung zu Label B;
022STF
{2nd][StF}
ist die Zahl negativ, wird Flag
02303
[3]
3 gesetzt
024LBL
[LBL]
025B
[B]
026 SUM
[SUM]
Summierung aller Zahlen
02712
[1]{2]
0281F.F
[2nd][HF]
"ist Flag 3 gesetzt"?
02903
[3]
030C
[©].
Wenn ja {negative Zahl),
Sprung zu C;
O31PRT
[2nd]{Prt}
Wennnein, Ausdruck derZahl
54
INDIREKTE ADRESSIERUNG
u
EEE
032L8L
[LBL]
033C
[C]
O341NV
LINV}
035STF
[2nd][StF]
Rücksetzen von Flag 3 für die
03603
[3]
nächste Eingabe
037 RCL
[RCL]
038 12
[1112]
039R/S
[WS]
Kontrollieren Sie, daß vor Eingabe einer Reihe von Zahlen das Datenregister
12 nicht belegt, das T-Register gelöscht und Flag 3 rückgesetzt ist. Bei Ein-
gabe einer Zahl und der Taste [A wird die Zahl zum Inhalt des Datenregi-
sters 12 addiert, eine positive Eingabe ausgedruckt und die Gesamtsumme
aus allen Eingaben angezeigt.
Flag8 ist reserviert, um eine Programmoperation entsprechend dem Fehler-
status eines Programms zu bestimmen. Im allgemeinen wird ein Programm
selbst bei Auftreten eines arithmetischen Fehlers fortgesetzt; ist Flag 8
gesetzt (manuell oder im Programm), wird die Ausführung des Programmsin
jedem Fall unterbrochen, wenn eine solche Fehlerbedingung auftritt. Ist Flag
8 rückgesetzt, wird das Programm nur bei nichtarithmetischen Fehlern
unterbrochen.
[OP] 18 veranlaßt das Setzen von Flag 7, falls in einem Programm keineFeh-
lerbedingung vorliegt. [OP] 19 setzt Flag 7 nur, wenn eine Fehlerbedingung
in einem Programm vorliegt. Flag 7 kann dann zur Bestimmung des Fehler-
status Ihres Programms kontrolliert werden, und Sie können entsprechend
reagieren.
Wenn einer dieser Tests falsch ist, wird Flag 7 nicht geändert.
Indirekte Adressierung
Bei Eingabe
der Tastenkombination
[2nd] [Ind] für die indirekte
Adressierung kann die Leistungsfähigkeit der Speicheroperations-
und Sprungbefehle erhöht werden. Die Grundidee besteht darin, daß
man den Inhalt eines Registers nicht mehr als Richtwert benutzt,
vielmehr gibt er nur die Nummer des Speichers, in welchem man den
Richtwert findet.
55