-
波蘭式
鎖定
波蘭式在通常的表達式中,二元運算符總是置於與之相關的兩個運算對象之前,所以,這種表示法也稱為前綴表達式。
- 中文名
- 波蘭式
- 外文名
- Polish Notation
- 提出者
- Lukasiewicz
- 表達式
- +AB
- 相 關
- 把每一運算符置於其運算對象之前
波蘭式簡介
對中綴表達式的計值,並非按運算符出現的自然順序來執行其中的各個運算,而是根據算符間的優先關係來確定運算的次序,此外,還應顧及括號規則。因此,要從中綴表達式直接產生目標代碼一般比較麻煩。
波蘭邏輯學家J.Lukasiewicz於1929年提出了另一種表示表達式的方法。按此方法,每一運算符都置於其運算對象之後,故稱為後綴表示。這種表示法的一個特點是,表達式中各個運算是按運算符出現的順序進行的,故無須使用括號來指示運算順序,因而又稱為無括號式。
下面我們對照地給出一些表達式的三種表示:
前綴表示 | 中綴表示 | 後綴表示 |
+AB | A + B | AB+ |
+A*BC | A + B * C | ABC*+ |
*+AB+CD | (A + B) * (C + D) | AB+CD+* |
從上面的例子可以看出:
(1) 在兩種表示中,運算對象出現的順序相同;
(2) 在後綴表示中,運算符按實際計算順序從左到右排列,且每一運算符總是跟在其運算對象之後。
波蘭式相關
順便提及,Lukasiewicz原來提出的是前綴表示,即把每一運算符置於其運算對象之前。例如,中綴式a+b和(a+b)/c相應的前綴表示分別為+ab和/+abc。因此,為了區分前綴和後綴表示,通常將後綴表示稱為逆波蘭表示。因前綴表示並不常用,所以有時也將後綴表示就稱為波蘭表示。
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:11次歷史版本
- 最近更新: 小义_發