Die Bedeutung verschachtelter Ausdrücke
Syntax
Wir beschreiben die Syntax eines Vorzeichenausdrucks hier ohne Verwendung von Syntaxdiagrammen, unter anderem auch für Leser, die Syntaxdiagramme nicht lesen wollen:
Ein Vorzeichenausdruck ist ein Literal, vor dem noch endlich viele Vorzeichen (»+« oder »-«) stehen dürfen.
Semantik
Ein Ausdruck mit mehreren, direkt aufeinanderfolgenden Vorzeichen (beispielsweise »- - 4«) hat dieselbe Bedeutung wie dies schon in der Schule für solche Schreibweisen gelernt wurde. (Beispielsweise hat »- - 4« den Wert «4».)
Details zur Semantik ʳ⁴⁴
Ein Operand kann selber wieder ein Operatorausdruck sein. So tritt der Operatorausdruck »-2« im Ausdruck »+-2« beispielsweise als Operand auf.
Bei der Auswertung eines Operatorausdrucks wird zunächst der Operand ausgewertet. Der dabei erhaltene Wert wird alsdann in die Operandenstelle des Operators eingesetzt, um eine Inkarnation des Operators zu erhalten. Aus dem Start dieser Inkarnation ergibt sich dann der Ergebniswert.
Beispiel ʳ⁴⁴
Wir beschreiben als Beispiel die internen Schritte bei der Auswertung des Ausdrucks »+-2«:
- Ausdruck (Operatorausdruck)
- »+-2«
Bei der Auswertung des Vorzeichenausdrucks »+-2« wird zuerst der Operand »-2« ausgewertet, hierbei ergibt sich der interne Wert «-2».
- Zwischenschritt (Operator und Operandenwert)
- »+« «-2»
Der Operator »+« wird hier auf einen int-Operanden angewendet und steht daher für das interne Programm [+int].
- Zwischenschritt (Programminkarnation)
- [+int] «-2»
Oben steht „›+int‹ «2»“ für die Kombination des internen Programms [+int] (das Vorzeichenbeibehaltungsprogramm für int-Werte) mit dem internen Wert «-2».
Die Anwendung des Programms [+int] auf den Operandenwert «-2» ergibt dann als Endergebnis den internen Wert «-2».
- Endergebnis (interner Wert)
- «-2»
Die wichtigsten Eigenschaften der Vorzeichenoperatoren »+« und »-«
Dieser Abschnitt faßt die wichtigsten Eigenschaften der Vorzeichenoperatoren noch einmal zusammen und enthält darüber hinaus noch einige ergänzende Informationen.
Syntax
- Syntaxdiagramm
Vorzeichenausdruck
Erster Fall:
.--------------------.
--->.------------>| Literal |----.---->
| '--------------------' ^
| |
| Zweiter Fall: |
| .-. .--------------------. |
'--->( - )--->| Vorzeichenausdruck |----'
| '-' '--------------------' |
| .-. .--------------------. |
'--->( + )--->| Vorzeichenausdruck |----'
'-' '--------------------'Ausdruck
.---------------------.
--->| Vorzeichenausdruck |--->
'---------------------'
Typanforderungen
Der Operand eines Vorzeichenoperators muß einen numerischen Typ haben.
Typregeln
Der Typ eines Vorzeichenausdrucks ist der Typ seines Operanden.
Semantik
- Erster Fall:
- Falls der Vorzeichenausdruck ein Literal ist, so ist sein Wert der Wert jenes Literals.
- Zweiter Fall:
- Andernfalls wird zuerst der Operand ausgewertet. Falls das Vorzeichen des Vorzeichenausdrucks ein »-« ist, ist der Wert des gesamten Vorzeichenausdrucks das Negative des Operandenwertes, sonst ist es der Operandenwert selber.
Es ist möglich, daß sich bei einem Vorzeichenwechsel nicht das mathematisch korrekte Ergebnis ergibt, falls das mathematisch korrekte Ergebnis im Typ des Vorzeichenausdrucks nicht darstellbar ist. Weitere Details zu diesem Thema sollen aber an dieser Stelle des Kurses noch nicht behandelt werden.