mirror of
https://github.com/MartinThoma/LaTeX-examples.git
synced 2025-04-25 14:28:05 +02:00
Polnische Notation / Infix, Prä- und Postfixnotation
This commit is contained in:
parent
16d9ba2f2a
commit
564dbc9790
2 changed files with 48 additions and 2 deletions
|
@ -13,8 +13,6 @@ Bytecode ist unabhängig von realer Hardware.
|
||||||
und in beliebiger Reihenfolge wieder freigegeben werden können.
|
und in beliebiger Reihenfolge wieder freigegeben werden können.
|
||||||
\end{definition}
|
\end{definition}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
\textit{Activation Record} ist ein \textit{Stackframe}.\index{Activation Record|see{Stackframe}}
|
\textit{Activation Record} ist ein \textit{Stackframe}.\index{Activation Record|see{Stackframe}}
|
||||||
\section{Instruktionen}
|
\section{Instruktionen}
|
||||||
\begin{table}[h]
|
\begin{table}[h]
|
||||||
|
@ -29,8 +27,56 @@ Bytecode ist unabhängig von realer Hardware.
|
||||||
\end{tabular}
|
\end{tabular}
|
||||||
\end{table}
|
\end{table}
|
||||||
|
|
||||||
|
\section{Polnische Notation}
|
||||||
|
\begin{definition}[Schreibweise von Rechenoperationen]
|
||||||
|
Sei $f: A \times B \rightarrow C$ eine Funktion, $a \in A$ und $b \in B$.
|
||||||
|
|
||||||
|
\begin{defenum}
|
||||||
|
\item Die Schreibweise $a\ f\ b$ heißt \textbf{Infix-Notation}\xindex{Infix-Notation}.
|
||||||
|
\item Die Schreibweise $f\ a\ b$ heißt \textbf{Präfixnotation}\xindex{Präfixnotation}
|
||||||
|
\item Die Schreibweise $a\ b\ f$ heißt \textbf{Postfixnotation}\xindex{Postfixnotation}.
|
||||||
|
\end{defenum}
|
||||||
|
\end{definition}
|
||||||
|
|
||||||
|
\textit{Polnische Notation}\index{Notation!polnische|see{Präfixnotation}} ist ein Synonym für die Präfixnotation.
|
||||||
|
|
||||||
|
\textit{Umgekehrte polnische Notation}\index{Notation!umgekehrte polnische|see{Postfixnotation}} ist ein Synonym für die Postfixnotation.
|
||||||
|
|
||||||
|
\begin{beispiel}[Schreibweise von Rechenoperationen]
|
||||||
|
\begin{bspenum}
|
||||||
|
\item $1 + 2$ nutzt die Infix-Notation.
|
||||||
|
\item $f\ a\ b$ nutzt die polnische Notation.
|
||||||
|
\item Wir der Ausdruck $1 + 2 \cdot 3$ in Infix-Notation ohne Operatoren-Präzedenz
|
||||||
|
ausgewertet, so gilt:
|
||||||
|
\[1 + 2 \cdot 3 = 9\]
|
||||||
|
Wird er mit Operatoren-Präzendenz ausgewertet, so gilt:
|
||||||
|
\[1 + 2 \cdot 3 = 7\]
|
||||||
|
\item Der Ausdruck
|
||||||
|
\[1 + 2 \cdot 3 = 7\]
|
||||||
|
entspricht
|
||||||
|
\[+\ 1\ \cdot\ 2\ 3\]
|
||||||
|
in der polnischen Notation und
|
||||||
|
\[1\ 2\ 3\ \cdot\ +\]
|
||||||
|
in der umgekehrten polnischen Notation.
|
||||||
|
\end{bspenum}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
\begin{bemerkung}[Eigenschaften der Prä- und Postfixnotation]
|
||||||
|
\begin{bemenum}
|
||||||
|
\item Die Reihenfolge der Operanden kann beibehalten und gleichzeitig
|
||||||
|
auf Klammern verzichtet werden, ohne dass sich das Ergebnis
|
||||||
|
verändert.
|
||||||
|
\item Die Infix-Notation kann in einer Worst-Case Laufzeit von $\mathcal{O}(n)$,
|
||||||
|
wobei $n$ die Anzahl der Tokens ist mittels des
|
||||||
|
\textit{Shunting-yard-Algorithmus}\xindex{Shunting-yard-Algorithmus} in
|
||||||
|
die umgekehrte Polnische Notation überführt werden.
|
||||||
|
\end{bemenum}
|
||||||
|
\end{bemerkung}
|
||||||
|
|
||||||
\section{Weitere Informationen}
|
\section{Weitere Informationen}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \url{http://cs.au.dk/~mis/dOvs/jvmspec/ref-Java.html}
|
\item \url{http://cs.au.dk/~mis/dOvs/jvmspec/ref-Java.html}
|
||||||
|
\item \href{http://scanftree.com/Data_Structure/prefix-postfix-infix-online-converter}{scanftree.com}:
|
||||||
|
Infix $\leftrightarrow$ Postfix Konverter
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\index{Java Bytecode|)}
|
\index{Java Bytecode|)}
|
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue