Einführung in Operatoren (besonders für Grundrechenarten) im Rahmen der Lehre formaler Sprachen. [] (Grundrechenarten, Addition, Subtraktion, Operator, Grundrechenart, Dividend, Divisor), Lektion, Seite 720461
http://www.purl.org/stefan_ram/pub/formal_operator_de ist die kanonische URI dieser Seite.
Stefan Ram

Operatoren

Ein Operator  verbindet Ausdrücke zu einem neuen Ausdruck, der auch Operatorausdruck  genannt wird. In dem Ausdruck "3+7" verbindet der Operator "+" das Numeral "3" und das Numeral "7". Die Teile eines Ausdrucks, die durch einen Operator verknüpft werden, nennt man Operanden. Im Ausdruck "3+7" ist also das Numeral "3" der linke Operand und das Numeral "7" der rechte Operand des Operators "+".

Der Ausdruck "3+7"
 Ausdruck 
.--------------------------------------------------. 
| Teilausdruck Teilausdruck | 
| .------------. .------------. | 
| | 3 | + | 7 | | 
| '------------' '------------' | 
| Operand Operator Operand | 
'--------------------------------------------------'

Der Ausdruck "3+7" besteht aus insgesamt drei Ausdrücken, denn neben dem gesamten Ausdruck sind auch noch die beiden Numerale Ausdrücke, die man auch als Teilausdrücke  bezeichnet, weil sie Teile eines größeren Ausdruck sind. Andere Teile des Ausdrucks, wie etwa das Zeichen "+" oder das Zeichenpaar "3+" sind keine Ausdrücke, da sie ja auch keinen Wert haben.

Der Aufbau eines Summenausdrucks läßt sich auch mit der Backus-Naur-Form schreiben.

Summe 〉 ::=
linker Summand 〉 "+" 〈rechter Summand 〉.

Obwohl ein Ausdruck sich aus mehreren Teilausdrücken zusammensetzen kann, gilt er nach außen doch als ein  Ausdruck. Dies kann man mit einem Paket vergleichen: Von außen sieht man es nicht, ob das Paket intern vielleicht noch weitere Pakete enthält und spricht daher von einem  Paket.

Arität

Auch bei der Schreibweise "−4" für die negative Zahl „minus Vier“ kann man das Zeichen "−" als einen Operator ansehen, der die Zahl "4" als Operanden hat. Solch einen Operator nennt man ja auch ein „Vorzeichen.“

Einen Operator, der nur einen Operanden hat, wie beispielsweise der Operator "−" in dem Ausdruck "−4", nennt man einen unären  Operator. Ein Operator, der zwei Operanden hat, wie der Operator "+" in dem vorherigen Beispiel, nennt man einen binären  Operator. Einen Operator mit drei Operanden nennt man einen ternären  Operator. Allgemein ist die durch diese Adjektive bezeichnete Eigenschaft die Arität  eines Operators, ein unärer Operator hat die Arität Eins, ein binärer Operator hat die Arität Zwei und so weiter.

Der Ausdruck "-4"
 Ausdruck 
.--------------------------------. 
| Teilausdruck | 
| .------------. | 
| - | 4 | | 
| '------------' | 
| Operator Operand | 
'--------------------------------'

Auch mit der Backus-Naur-Form lassen sich Ausdrücke mit vorangestelltem unären und zwischengestelltem binären Operator schreiben.

unärer Ausdruck 〉 ::=
unärer Operator 〉 〈unärer Operand 〉.
binärer Ausdruck 〉 ::=
linker Operand 〉 〈binärer Operator 〉 〈rechter Operand 〉.

Literale

Ein Ausdruck, der einen Operator  enthält, ist kein Literal  mehr. In vielen formalen Sprachen ist daher der Ausdruck "-4" kein  Literal. Es gibt also in vielen formalen Sprachen keine Literale für negative Zahlen, diese müssen als Ausdruck mit dem unären Minusoperator "-" geschrieben werden.

Grundoperatoren

Viele formale Sprachen stellen Operatoren für die Grundrechenarten, die Kinder in der Schule lernen, bereit.

Summe

Die verschiedenen Bezeichnungsweise für die Operanden einer Summe kann den folgenden Produktionen für das Beispiel von drei Operanden entnommen werden.

Summe 〉 ::=
Summand 〉 "+" Summand 〉 "+" Summand 〉.

Der Operator "+" in einer Summe wird als „plus“ oder „und“ gesprochen.

Die durchgeführte Rechnung ist eine Addition  (das Zusammenzählen).

Wegen der Kommutativität ist keine Unterscheidung der Operanden notwendig, solange die Operation isoliert betrachtet wird. Aus dem Zusammenhang, in dem die Operanden vorkommen, kann sich aber manchmal der Wunsch ergeben, die Werte in einen Wert, „zu dem addiert wird,“ und in Werten, „die addiert werden,“ zu unterscheiden. Dann sind folgende Bezeichnungen möglich.

Summe 〉 ::=
Augend 〉 "+" Addend 〉 "+" Addend 〉.

Die Bezeichnungsweisen der Operanden in der folgenden Produktion können heute (im Jahre 2004) als veraltet gelten.

Summe 〉 ::=
Augendus 〉 "+" Addendus 〉 "+" Addendus 〉.

Es folgt noch eine Angabe der englischen Bezeichnungen:

Addend
addend
Augend
augend
Summe
sum, total

Sometimes both the augend and the addend are called the addends.

Differenz

Die verschiedenen Bezeichnungsweise für die Operanden einer Differenz kann den folgenden Produktionen entnommen werden.

Differenz 〉 ::=
Minuend 〉 "" Subtrahend 〉 "" Subtrahend 〉.

Der Operator "" in einer Differenz wird als „minus“ gesprochen.

Die durchgeführte Rechnung ist eine Subtraktion  (das Abziehen).

Die Bezeichnungsweisen der Operanden in der folgenden Produktion können heute (im Jahre 2004) als veraltet gelten.

Differenz 〉 ::=
Minuendus 〉 "" Subtrahendus 〉 "" Subtrahendus 〉.

Es folgt noch eine Angabe der englischen Bezeichnungen:

Differenz
difference
Minuend
minuend
Subtrahend
subtrahend

Produkt

Die verschiedenen Bezeichnungsweise für die Operanden eines Produktes kann den folgenden Produktionen entnommen werden.

Produkt 〉 ::=
Faktor 〉 "·" Faktor 〉 "·" Faktor 〉.
Produkt 〉 ::=
Multiplikand 〉 "·" Multiplikator 〉 "·" Multiplikator 〉.

Der Operator "·" in einem Produkt wird als „mal“ gesprochen.

Die durchgeführte Rechnung ist eine Multiplikation  (das Vervielfachen, das Malnehmen). Nach Pippi Langstrumpf  wird sie auch als Plutimikation  bezeichnet.

Die Bezeichnungsweisen der Operanden in der folgenden Produktion können heute (im Jahre 2004) als veraltet gelten.

Produkt 〉 ::=
Multiplicandus 〉 "·" Multiplicator 〉 "·" Multiplicator 〉.

Anstelle des Multiplikationszeichens "·" wird in vielen formalen Sprachen auch das Sternchen "*" verwendet.

Es folgt noch eine Angabe der englischen Bezeichnungen:

Multiplikand
multiplicand
Multiplikator
multiplier
Faktor
factor

Quotient

Die verschiedenen Bezeichnungsweise für die Operanden einer Division kann den folgenden Produktionen entnommen werden.

Quotienten 〉 ::=
Dividend 〉 "" Divisor 〉 "" Divisor 〉.

Der Operator "" in einem Quotienten wird als „(geteilt) durch“ gesprochen.

Die durchgeführte Rechnung ist eine Division  (das Teilen).

Einen Quotienten kann man auch als Bruch interpretieren.

Bruch 〉 ::=
Zähler 〉 "" Nenner 〉.

Der Nenner gibt an, in wieviele gleiche Teile die "1" zerlegt wurde und der Zähler, wieviel davon addiert wurden. So ist "3/7" der Wert, den man erhält, wenn man die "1" in sieben gleiche Teile zerlegt und drei von diesen addiert.

Die Bezeichnungsweisen des ersten Operanden in der folgenden Produktion können heute (im Jahre 2004) als veraltet gelten.

Quotient 〉 ::=
Dividendus 〉 "" Divisor 〉 "" Divisor 〉.

Anstelle des Divisionszeichens "" wird in vielen formalen Sprachen auch der Schrägstrich "/" verwendet.

Es folgt noch eine Angabe der englischen Bezeichnungen:

Quotient
quotient
Dividend
dividend
Divisor
divisor

Klammern

Die runden Klammern, also die Klammer auf "(" und die Klammer zu ")", können verwendet werden, um zu Teilausdrücke zu umklammern. Andere Klammern, wie eckige oder geschweifte Klammern, dürfen für diesen Zweck in den meisten formalen Sprachen nicht eingesetzt werden.

/    Numeral?
Ein Numeral ist ein durch eine formale Sprache definierter Name eines Zahlenwertes, der keine Operatoren enthält. Geben Sie an, ob es sich bei den folgenden Texten jeweils um ein Numeral handelt.
  • "1.5"
  • "1 + 5"
  • "3"
  • "1 * 5"
/    Gemischte Zahl
Wie wird die gemischte Zahl "3 1/2" (gesprochen „Dreieinhalb“) durch Grundrechenarten ausgedrückt? (In den meisten formalen Sprache kann man gemischte Zahlen nicht direkt notieren.)

In der Mathematik bedeutet die Hintereinanderschreibung, wie in dem Term "4a" oft Multiplikation. so daß der Term "4a" den gleichen Wert wie der Term "4·a" hat. Bei der gemischten Zahl "3 1/2" bedeutet die Hintereinanderschreibung einer Zahl und eines Bruchs aber etwas anderes.

Position

Bestimmte unäre Operatoren können auch direkt hinter  ihrem Operanden stehen, man spricht dann von einem nachgestellten  (engl. postfix ) Operator. Die bisher vorgestellten unären Operatoren, wie das Minus, stehen vor  ihren Operanden, sind also vorgestellte  (engl. prefix ) Operatoren. Ein binärer  Operator steht normalerweise zwischen  seinen Operanden (engl. infix ).

In der Backus-Naur-Form wird der Unterschied zwischen vor- und nachgestelltem unären Operator klar:

unärer Ausdruck mit vorgestelltem Operator 〉 ::=
vorgestellter unärer Operator 〉 〈unärer Operand 〉.
unärer Ausdruck mit nachgestelltem Operator 〉 ::=
unärer Operand 〉 〈nachgestellter unärer Operator 〉.

Schließlich gibt es noch Sonderformen von Operatoren. So bilden die Klammern in dem Ausdruck "( 1 )" einen unären Operator, der seinen Operanden umgibt. In dem Funktionsausdruck "cos( 0 )" bilden die Klammern den Aufrufoperator und wechseln sich mit ihren beiden Operanden (dem Operanden "cos" und dem Operanden "0") ab.

Typen und Operatoren

Durch einen Operator und den Datentyp seiner Operanden ist auch der Datentyp des Operatorausdruck bestimmt. So könnte man beispielsweise in einer formalen Sprache einen Operator "-" verwenden, der es erlaubt die Gegenzahl "-z" einer ganzen Zahl "z" zu notieren.

Der Operator "-" [Kompassdiagramm]
              .----------------. 
Argument | Operator - | Abbildungswert 
------------->| |---------------> 
Ganzzahl '----------------' Ganzzahl

Damit ist beispielsweise der Datentyp des Ausdrucks "-4" bestimmt. Der Ausdruck "-1.2" wäre nicht zulässig, wenn der Operator "-" nur für Ganzzahlen definiert sein sollte. (In vielen formalen Sprachen ist er aber auch für Gleitkommazahlen definiert.)

Von der Stefan-Ram-Startseite ausgehend finden sich oft noch mehr Informationen zu Themen, die auf einer Seite angesprochen wurden. (Eine Verbindung zur Stefan-Ram-Startseite befindet sich ganz oben auf dieser Seite.)  |   Netzpostadresse von Stefan Ram: "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen)   |   Seiteninformation und Impressum  |   Formular für diese Seite betreffende Mitteilungen an den Herausgeber  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. slrprd, PbclevtugFgrsnaEnz