Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

ADD-Anweisung

&pagelevel(4)&pagelevel

Funktion

Die ADD-Anweisung addiert zwei oder mehr numerische Operanden und speichert das Ergebnis ab.

Format 1

die ADD-Anweisung speichert die Summe im jeweiligen Operandenfeld ab. Mehrere Additionen können mit einer ADD-Anweisung durchgeführt werden, indem mehr als ein Ergebnisfeld angegeben wird.

Format 2

die ADD-Anweisung speichert die Summe in einem getrennten Ergebnisfeld ab.

Format 3

die ADD-Anweisung addiert die Elemente einer Datengruppe zu den entsprechenden Datenelementen einer anderen Gruppe.

Format 1


ADD {bezeichner-1 | literal-1}... TO {bezeichner-2 [ROUNDED]}...

[ON SIZE ERROR unbedingte-anweisung-1]

[NOT ON SIZE ERROR unbedingte-anweisung-2]

[END-ADD]


Syntaxregeln

  1. Jeder Bezeichner muss sich auf ein numerisches Datenfeld beziehen.

  2. Die gemeinsame Stellenzahl der Operanden, die in einer gegebenen Anweisung ermittelt wird, darf nicht mehr als 31 Ziffern betragen (siehe „Arithmetische Anweisungen" ).

  3. Die Werte der Operanden, die dem Wort TO vorangehen, werden addiert und die Summe zu dem derzeitigen Wert von bezeichner-2... dazuaddiert. Das Ergebnis wird in bezeichner-2 ... abgespeichert.

Für weitere Regeln siehe unter „Angaben in Anweisungen"; die ROUNDED-Angabe und (NOT) ON SIZE ERROR-Angabe sind in diesem Abschnitt beschrieben.

Beispiel 8-21

Anweisung

Maskenzeichenfolge des Ergebnisfeldes

Rechnung

ADD A, B TO C, D


A + B + C abgespeichert in CA + B + D abgespeichert in D

ADD A, B, C TO D

S9999V99

A + B + C + D abgespeichert in D als SnnnnVnn

ADD A, 14 TO C ROUNDED

99999

A + 14 + C abgespeichert in C als nnnnn, wobei, wenn nötig, gerundet wird.

Format 2


ADD {bezeichner-1 | literal-1}... TO {bezeichner-2 | literal-2} GIVING {bezeichner-3 [ROUNDED]}...

[ON SIZE ERROR unbedingte-anweisung-1]

[NOT ON SIZE ERROR unbedingte-anweisung-2]

[END-ADD]


Syntaxregeln

  1. Jeder Bezeichner, der dem Wort GIVING vorangeht, muss sich auf ein numerisches Datenelement beziehen.

  2. bezeichner-3 kann sich auf ein numerisches oder numerisch druckaufbereitetes Datenelement beziehen.

  3. Die gemeinsame Stellenzahl der Operanden, die in einer gegebenen Anweisung ermittelt wird, mit Ausnahme des Datenfeldes, das dem Wort GIVING folgt, darf nicht mehr als 31 Ziffern betragen (siehe „Arithmetische Anweisungen").

  4. Die Werte der Operanden, die dem Wort GIVING vorangehen, werden addiert; danach wird die Summe als neuer Wert in bezeichner-3 abgespeichert.

Für weitere Regeln siehe unter „Angaben in Anweisungen"; die GIVING-Angabe, ROUNDED-Angabe und (NOT) ON SIZE ERROR-Angabe sind in diesem

Beispiel 8-22

Anweisung

Maskenzeichenfolge des Ergebnisfeldes

Rechnung

ADD A, B, C GIVING D.

9999.99

A + B + C abgespeichert in D als nnnn.nn

ADD A, B, 43.6 GIVING D
    ON SIZE ERROR
        GO TO UEBERLAUF
END-ADD.

99V99

A + B + 43.6 abgespeichert in D. Wenn die Anzahl der ganzzahligen Stellen im Ergebnis größer als 2 ist, tritt die Überlaufbedingung ein und die in SIZE ERROR angegebene GO TO-Anweisung wird ausgeführt.

Format 3


ADD {CORR | CORRESPONDING} bezeichner-1 TO bezeichner-2 [ROUNDED]

[ON SIZE ERROR unbedingte-anweisung-1]

[NOT ON SIZE ERROR unbedingte-anweisung-2]

[END-ADD]


Syntaxregeln

  1. Jeder Bezeichner muss sich auf eine Datengruppe beziehen.

  2. Die gemeinsame Stellenzahl der Operanden, die für jedes Paar von entsprechenden Datenfeldern getrennt bestimmt wird, darf nicht mehr als 31 Ziffern betragen (siehe „Arithmetische Anweisungen").

  3. Datenelemente innerhalb des ersten Operanden (bezeichner-1) werden zu den entsprechenden Datenelementen im zweiten Operanden (bezeichner-2 ...) addiert. Die Ergebnisse werden in den Feldern des zweiten Operanden abgespeichert.

Für weitere Regeln siehe unter „Angaben in Anweisungen"; die CORRESPONDING-Angabe, ROUNDED-Angabe und (NOT) ON SIZE ERROR-Angabe sind in diesem Abschnitt beschrieben.

Beispiel 8-23

Siehe die Beschreibung der CORRESPONDING-Angabe als Beispiel für die Verwendung dieses Zusatzes ( "CORRESPONDING-Angabe ").