T n,,f ]bersetzen ab Zeile n bis Programmende und Sichern der ]ber-
setzung unter dem Namen f. Nach fehlerfreier ]bersetzung kann auf
die Frage "Ok?" mit "Y" oder "N" geantwortet werden. Erst auf die
Antwort "Y" erfolgt die Verbindung der Bibliothek (etwa 4 kByte)
mit dem Objektprogramm. Es entsteht ein selbstst{ndig lauff{higes
Codeprogramm, das nach dem Einlesen automatisch startet. Wieder-
holter Start ist vom Betriebssystem aus durch "R" m|glich.
V Anzeige des Parameterspeichers in der Form
n m
f
s
X Liefert die Anfangs- und Endadresse des Quelltextes in Hexaform
3.2 Verk}rzte und wiederholte Kommandos
---------------------------------------
F}r die vier Kommandoparameter n,m,f,s existiert ein Speicher, der nach jeder
Kommandoeingabe mit den neuen Parametern belegt wird. Im Kommando nicht belegte
Parameter bleiben dabei unver{ndert. Anschlie~end erfolgt die Ausf}hrung des
Kommandos, wobei die Parameter aus dem Parameterspeicher verwendet werden. Nach
der Initialisierung hat der Parameterspeicher den Zustand
10 10 leere Zeichenkette leere Zeichenkette
Bei diesem Zustand des Parameterspeichers ist das Kommando
I gleichbedeutend mit dem Kommando I 10,10
Beachten Sie dabei: Wenn ein ausgelassener Parameter nicht der letzte ist, so
mu~ das ihm folgende Komma gesetzt werden!
Aus diesen Regeln ergibt sich die M|glichkeit, bei oft verwendeten Kommandos die
Parametereingabe abzuk}rzen.
Beispiel 1: Soll nur die Zeile n editiert werden und dabei keine Unterst}tzung
durch Zeichenketten-Vorwahl erfolgen, so gen}gt das Kommando
E n
Beispiel 2: An mehreren Prozedurk|pfen sollen [nderungen vorgenommen werden.
Kommando: F n,m,PROCEDURE
Nach beendeter Korrektur der so aufgerufenen Zeile kann mit dem
Editor-Unterkommando "F" zum n{chsten Prozedurkopf }bergegangen
werden.
Ausnahmen:
C ]bersetzen ab niedrigster Zeilennummer
D n,m Verk}rzung nicht m|glich
E n weitere Verk}rzung nicht m|glich
K wirkt wie das Kommando "K 15"
L n,m Weglassen von n bewirkt das Listen ab niedrigster Zeilennummer, Weg-
lassen von m das Listen bis Textende
N n,m Verk}rzung nicht m|glich
T ]bersetzen ab niedrigster Zeilennummer und Auslagern mit Namen f aus
T ,,f dem Parameterspeicher bzw. mit dem angegebenen Namen.
3.3. Unterkommandos des Editors
-------------------------------
Nachdem dur "E ..." oder "F ..." das Editieren er|ffnet ist, stehen folgende
Unterkommandos zur Verf}gung.
Space bewirkt die zeichenweise ]bernahme aus der alten in die neue Zeile.
--> }bernimmt bis zur n{chsten Tabulatorposition.
<-- baut die neue Zeile wieder zeichenweise ab.
C stellt auf Korrigieren um. Der Cursor ist jetzt '+'. Die alten Zeichen
werden durch neue }berschrieben.
<-- r}ckt l|schend zur}ck
ENTER beendet das Unterkommando C
F sucht die n{chste Zeichenkette f, der Cursor wird auf die erts Position
dieser Zeichenkette gesetzt.
I stellt um auf Zeichen einf}gen. Der Cursor ist jetzt '*'. Auf Cursor-
position kann ein Zeichen eingef}gt werden.
--> Erzeugen von Leerzeichen
<-- r}ckt l|schend zur}ck
ENTER beendet das Unterkommando I
K l}scht das Zeichen auf Cursorposition. Mehrmaliges Dr}cken von "K" be-
wirkt die L}schung der n{chsten Zeichen (ohne Reaktion auf dem Bild-
schirm).
L schreibt die aktuelle Zeile aus, }bernimmt dabei bereits get{tigte Kor-
rekturen und stellt den Cursor auf das erste Zeichen dieser Zeile.
Q beendet die Korrektur der Zeile, ohne deren Korrekturen zu }bernehmen
und beendet die Arbeit mit dem Editor.
R wie L, die bereits get{tigten Korrekturen werden aber nicht }bernommen.
S setzt ab erster Position der zuletzt gefundenen Zeichenkette f die
Zeichenkette s ein und geht zum Unterkommando "F" }ber.
X stellt um auf Weiterschreiben am Ende der Zeile. Cursor und weitere
Funktionen wie bei "I".
Z l|scht ab Kursorposition bis zum Zeilenende.
ENTER beendet die Korrektur der Zeile und die Arbeit mit dem Editor
4. Kontrollfunktionen des Compilers‡‡
___________________________________
Der Compiler hat eine Reihe von Kontrollfunktionen, die abgeschaltet werden
k|nnen, um die Bearbeitungsgeschwindigkeit zu erh|hen. Sie werden geschaltet
durch das entsprechende Funktionszeichen mit vorangestelltem '$' zu Beginn eines
Kommentars, z.B. ($L-,C-) . Die Kontrollfunktionen sind standardm{~ig auf '+'
eingestellt.
Kontroll- Wirkung
funktion
A Im Zustand A+ werden alle Feldindizes auf Einhaltung der Feldgrenzen
}berpr}ft, im Zustand A- entf{llt diese Kontrolle.
C Im Zustand C+ wird w{hrend des Programmlaufs in allen Schleifen,
Funktionen und Prozeduren die Tastatur auf Dr}cken der "STOP"-Taste
}berpr}ft, gegebenenfalls der Programmlauf unterbrochen und auf eine
weitere Tastenbedienung gewartet. Nochmaliges Dr}cken der "STOP"-
Taste f}hrt jetzt zum Abbruch, auf jede andere Taste wird das Pro-
gramm fortgesetzt. Bei C- wird auf die Tastaturkontrolle verzichtet.
L Im Zustand L+ wird beim ]bersetzen der Quelltext mit den Objektcode-
Adressen gelistet. Bei L- werden Zeilen nur dann gelistet, wenn in
ihnen Fehler auftreten.
O Alle Gleitkommaoperationen sowie die Multiplikation und Division bei
ganzen Zahlen unterliegen einer st{ndigen ]berlaufkontrolle. Bei O+
unterliegen auch die Addition und Subtraktion von ganzen Zahlen
dieser Kontrolle.
S Sie kontrolliert die Ausdehnung des Kellerspeichers (Stack). Bei S-
unterbleibt diese Kontrolle.
5. Fehlermeldungen des Laufzeitsystems‡‡
______________________________________
Halt Es liegt kein Fehler vor, denn es wurde "HALT" programmiert
oder "STOP" bzw. "BRK" zweimal hintereinander gedr}ckt.
Overflow Arithmetischer Uber- oder Unterlauf
Out of RAM F}r die erzeugten Daten reicht der 'Top of RAM' nicht aus
/ by Zero Division durch Null, hervorgerufen durch die Operationen /,
DIV oder MOD
Index too Low Feldindex zu klein
Index too High Feldindex zu gro~
Maths Call Error Fehler beim Aufruf einer mathematischen Funktion
Number too large Zahl ist zu gro~
Number expected Bei "READ" wurde Zahl erwartet
Exponent expected Ein Exponent wurde erwartet
6. Fehlermeldungen des Compilers‡‡
________________________________
1 Zahl zu gro~ 40 SET ist zu gro~ (>256 El.)
2 ; oder END fehlt 41 Typename f}r Funktionswert w.e.
3 nicht deklarierter Name 42 , oder Í oder /) in SET w.e.
4 ein Name w.e. 43 .. oder , oder Í in SET w.e.
5 := in Konstantendefinition 44 Typename des Parameters w.e.
6 = w.e. 45 leere Menge als erster Operand n.e.
7 dieser Name hier n.e. 46 Skalar oder REAL w.e.
8 := w.e. 47 Skalar w.e.
9 ) w.e. 48 Mengen nicht vertr{glich
10 falscher Typ 49 < und > f}r Mengenvergleiche n.e.
11 . w.e. 50 FORWARD, LABEL, CONST, VAR, TYPE
12 ein Operand w.e. oder BEGIN w.e.
13 Konstant w.e. 51 Hexazahl w.e.
14 Name ist keine Konstante 52 cannot poke sets
15 THEN w.e. 53 Feld zu gro~
16 DO w.e. 54 END oder \ in Satzdeklaration w.e.
17 TO oder DOWNTO w.e. 55 Feldname w.e.
18 ( w.e. 56 Variable nach WITH w.e.
19 dieser Type nicht schreibbar 57 Variable nach WITH vom Satztyp w.e.
20 OF w.e. 58 zu Satzkomponente fehlt zugeh|hrige
21 , w.e. WITH-Anweisung
22 : w.e. 59 Nach LABEL vorzeichenlose ganze Zahl
23 PROGRAM w.e. w.e.
24 Variable als Parameter w.e. 60 Nach GOTO vorzeichenlose ganze Zahl
25 BEGIN w.e. w.e.
26 Variable als Parameter von READ w.e. 61 Marke in falschem Niveau
27 Ausdr}cke dieses Typs nicht ver- 62 Nicht deklrierte Marke
gleichbar 63 Parameter von SIZE mu~ Variable sein
28 INTEGER oder REAL w.e. 64 Pointer k|nnen nur auf Gleichheit
29 dieser Variablentyp nicht lesbar getestet werden
30 Name ist kein Typebezeichner 67 H nach zweitem : w.e.
31 Exponent in REAL-Zahl w.e. 68 Strings d}rfen kein CR enthalten
32 Ausdruck v. Skalartyp w.e. 69 Parameter v. NEW, RELASE oder MARK
33 Leerstring ('') n.e. mu~ v. Pointertyp sein
34 Ë oder (/ w.e. 70 Parameter von ADDR mu~ Variable sein
35 Í oder /) w.e.
36 Feldindex mu~ skalar sein Verwendete Abk}rzungen:
37 .. w.e.
38 Í oder /) oder , in Felddeklaration w.e.: wird erwartet
w.e.
39 untere Grenze gr|~er als obere n.e.: nicht erlaubt
Anschrift der Autoren: Dr. Klaus Vetters
Gartenheimallee 2
Dresden
8021
e.: nicht erlaubt
Anschrift der Autoren: Dr. Klaus
Detected encoding: UTF-8 | 0
|