AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Inhalt   <<   <   >   >>   Index

a)     Anweisung, die das Ende der Ausführung eines Programms oder einer Funktion signalisiert und die obere Grenze des benutzten Speichers übergibt.
b)     Anweisung zum Setzten der höchsten von BASIC benutzten Adresse.
c)     Funktion zur *bergabe der Adresse des Endes der BASIC-Variablen.

Syntax:          als Anweisung:
          a)     END
          b)     END = Ausdruck
          als Funktion:
          c)     END

Zweck:          a)     Die END Anweisung schließt die Ausführung eines Programms ab.

                Hinweis: Diese Anweisung ist nicht in allen Programmen erforderlich, da die Ausführung in jedem Fall anhält, wenn die letzte Zeile des Programms abgearbeitet ist. Allerdings ist die END Anweisung (oder STOP) obligatorisch, wenn die Programmausführung an einer anderen Stelle als am Ende des Programms aufhören soll. Nur so kann ein ordungsgemäßer Programmablauf gewährleistet werden, wenn dem Hauptprogramm Prozeduren, Funktionen oder Unterroutinen angehängt sind. END ist auch in Fehlerbehandlungsprogrammen nützlich.

          b)     Bei Verwendung innerhalb einer Zuweisung setzt END die höchste von BASIC unter WIMP benutzte Adresse. Von dieser Möglichkeit können Programme Gebrauch machen, die unter WIMP laufen, um mehr Speicher aus dem Pool zu beanspruchen bzw. um überflüssigen Speicher wieder freizugeben.

                Der Ausdruck sollte eine Integer-Zahl mit dem neuen Wert für HIMEM sein. Nach dem Aufruf wird der Speicherplatz über der genannten Adresse freigegeben und HIMEM auf diese Position gesetzt. Außerdem werden lokale Arrays und installierte Libraries gelöscht. Da HIMEM die Adresse des Stapelanfangs enthält, sollte diese Anweisung nicht verwendet werden, solange sich etwas im Stapel befindet. Im Klartext: END sollte nicht innerhalb von PROCs, FNs oder Schleifenkonstruktionen verwendet werden.

                Wenn nicht genug Speicher frei ist, um HIMEM auf den angeforderten Wert zu setzen, wird die Fehlermeldung Attempt to allocate insufficient memory provoziert.

          c)     Die END Funktion übergibt die Adresse der oberen Speicheradresse, die von einem Programm und seinen Variablen benutzt wird. Der Ausdruck END-TOP gibt die Anzahl der durch die Variablen benutzten Bytes (mit Ausnahme der LOCAL arrays) sowie der OVERLAY- und LIBRARY-Bibliotheken.

Beispiele:     PRINT END
          
END=&10000     :REM braucht nur 32k zum Laufen

[sh-index] Back to list of manuals