Wieso werden Präfix- und Postfix-Arithmetikausdrücke erstellt und sogar verwendet? Was sind ihre Vorteile und Mängel?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Bushmills145 hat schon das Grundlegende zur Polnischen Notation genannt (die Logiker, die die Präfix-Notation eingeführt hatten, waren zufällig Polen, daher der Name).

Die Postfix-Notation ist die Reihenfolge, in der Computer die Werte und Operatoren intern verarbeiten. Deshalb hatten die ersten Taschenrechner auch diese Notation, und z. B. die Programmiersprache FORTH, die auch auf primitivsten Computern läuft, verwendet diese Notation noch heute.

Die Infix-Notation kommt unserer gesprochenen Sprache näher, auch fühlt es sich "natürlicher" an, Ausdrücke mit einer unbestimmten Anzahl von Operatoren zuzulassen.

Von Mängeln würde ich hier keinesfalls sprechen, nur von Nachteilen gegenüber der Infix-Notation.

(Zu natürlicher Sprache fällt mir ein - vielleicht kennst du aus den Asterix-Comics das Kürzel S.P.Q.R. aus den römischen Bannern? Es steht für "senatus populusque romanus" - der römische Senat und das römische Volk -, wobei die Nachsilbe "-que" "und" bedeutet. Ganz so eindeutig ist es also nicht mit der natürlichen Sprache.)

Woher ich das weiß:Berufserfahrung – Software-Entwickler
Bushmills145  02.07.2022, 11:43

huch, da kennt jemand Forth! Hut ab.

1

Postfixnotation erlaubt zum einen sehr einfache Evaluation des Ausdrucks, da keinerlei Berücksichtigung von Präzedenzen erforderlich ist: Evaluation kann strikt in der Reihenfolge, in der die Termen des Ausdrucks auftreten, erfolgen.

Weiterhin arbeiten Operatoren ausschließlich mit Operanden, welche schon bekannt sind, und damit schließt RPN sehr gut an stackorientierte Sprachen bzw Eingabemethoden an.