USR-FUNKTION
Die USR-Funktionen können für den Au fruf von Subroutinen in
der Assemblersprache benutzt werden, obwohl wir hierfür die
CALL-Anweisung empfehlen. Diese Funktion wird hier für die
Benutzer beschrieben, die mit vorher geschriebenen Programmen
arbeiten, die USR-Funktionen enthalten.
Für einen Vergleich zwischen C A L L und USR und für eine genaue
Beschreibung des Aufrufs von Subroutinen in der Assemblerspra
che wird auf Kapitel 5 " Subroutinen in der MS-BASIC Assembler
sprache" verwiesen.
USR wird auch in dem MS-BASIC-Handbuch beschrieben. Die vor
liegende Beschreibung ist jedoch etwas genauer und enthält dar
über hinaus einige Informationen, die für diese Implementierung
von MS-BASIC spezifisch sind.
Syntax
USR [< Z iffe r > ] [(Parameter)]
Wobei < Z iffe r > die gerade aufgerufene USR-Rou-
tine angibt. Für die Regeln, denen < Z iffe r > unter
liegt, wird auf " DEF U SR " in dem BASIC Hand
buch verwiesen. Wird < Z iffe r > weggelassen, so
wird von USRO ausgegangen. <Param eter> ent
spricht dem an die Subroutine übergebenen Wert.
Hier kann es sich um einen beliebigen numerischen
oder Zeichenfolgenausdruck handeln.
Zweck
Aufruf einer Subroutine in der Assemblersprache.
Bemerkungen Wird bei dieser Implementierung ein anderes Seg
ment als das Standardsegment (MS-BASIC Daten
segment, DS) benutzt, so muß vor einem USR-
Funktionsraufruf eine DEF SEG-Anweisung aus
geführt werden. Mit der in der DEF SEG-Anwei
sung angegebenen Adresse wird die Segmentadresse
der Subroutine bestimmt.
Für jede USR-Funktion muß eine entsprechende
DEF USR-Anweisung ausgeführt werden, um die
USR-Aufrufposition zu definieren. Diese Position
und die gerade aktive DEF SEG-Segmentadresse
bestimmen die
2-26
Anfangsadresse der Subroutine.