逆ポーランド記法とは?初心者でも納得できる基本と使い方の解説共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
逆ポーランド記法とは?初心者でも納得できる基本と使い方の解説共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


逆ポーランド記法とは?

逆ポーランド記法(RPN)は、計算式の要素を「押す順番」で表す表記法です。通常の数学式は中置記法といい、演算子の前後に括弧が必要になることがあります。これに対して RPN では演算子が数値の後ろに来るので、中括弧や括弧を使わずに計算を進められます。

特徴と利点

特徴としては演算子が数値の後ろに来る点と、計算を進めるためにスタックと呼ばれる一時的なデータ置き場を使う点です。利点は括弧が不要で、機械的に計算を進められるためプログラムや電卓が高速に動作します。

どうやって評価するのか

RPN の計算は数字を順番に「積み上げる」イメージです。入力された数字を順番に保持する箱を想像し、演算子が来たら箱の上から必要な数の数字を取り出して計算します。計算結果は再び箱に戻します。これを式の終わりまで繰り返します。

例と計算の流れ

具体的な例で考えてみましょう。

例 A の式は次のように表されます。

例 A は 3 4 + です。数字3と4を順番に積み上げ、次に + が来ると 3 と 4 を取り出して 3 + 4 の 7 を得ます。結果は 7 です。

例 B はもう少し複雑です。5 1 2 + 4 × + 3 − という並びを考えます。順に処理すると以下のようになります。まず 5 を積み上げる。次に 1、次に 2。その後現れた + により 1 と 2 を足して 3 を作り、箱に戻す。次に 4、そして × が来たので 3 と 4 を掛けて 12。箱には 5 と 12 が残るので + が来て 5 と 12 を足して 17。最後に 3 を積み上げ、- が来たら 17 から 3 を引いて 14 を得る。最終的な結果は 14 です。

このように RPN では計算の順序を正しく保つための括弧は不要で、演算子が現れるタイミングだけが計算のきっかけになります。計算機で RPN を使うと、複雑な式でも一度に読む必要がなく、手元の数字と演算子だけで順次処理されていきます。

表で見る基本

3 4 +
結果7
5 1 2 + 4 × + 3 −
結果14

実務ではこの考え方がプログラムの内部計算や、古い電卓の設計にも使われてきました。現在でも一部のプログラミング言語のコンパイラや、電卓アプリの背後で RPN が活躍しています。 初心者のうちは infix 型の式をそのまま読もうとせずに、まずはどういう順序で数値と演算子が並ぶかを観察することが近道です。


逆ポーランド記法の同意語

後置記法
演算子がオペランドの後ろに来る表記法。式を左から右へ読み、スタックを使って計算するのに適しています。
ポストフィックス記法
英語の postfix notation の日本語表記。演算子が末尾に来る記法で、逆ポーランド記法の代表的な呼び方です。
ポストフィックス
postfix notation に対応する『式』の呼び方。文脈により『記法』と同義で使われます。
RPN
Reverse Polish Notation の略。演算子がオペランドの後ろに配置される表記法のこと。
Reverse Polish Notation
正式名称。英語表記で、演算子がオペランドの後ろに来る表記法を指します。
ポーランド式
逆ポーランド記法とほぼ同義の表現。日常会話で使われることがあります。

逆ポーランド記法の対義語・反対語

前置記法(ポーランド記法/Prefix notation)
演算子がオペランドの前に来る記法。順序を左から読み解く前置タイプで、逆ポーランド記法の対になる形式です。
中置記法(Infix notation)
演算子がオペランドの間に来る標準的な記法。通常の数式表現で、括弧を使って計算順序を明示します。
ポーランド記法(Polish notation/Prefix notation)
演算子が最初に来て、オペランドが後に続く記法。前置記法の別称として使われ、逆ポーランド記法の対になります。

逆ポーランド記法の共起語

後置記法
演算子がオペランドの後ろに来る表記法で、RPNと同義です。スタックを使って順番に計算することで、式の評価が簡単になります。
ポーランド記法
演算子がオペランドの前に来る表記法の総称。前置記法(prefix notation)とも呼ばれ、主に人間が読みやすい形として用いられます。
前置記法
演算子がオペランドの前に来る具体的な表記。例として + 3 4 のように、先頭に演算子が来る形です。
中置記法
通常の数学表記。演算子がオペランドの間に来る形で、最も見慣れた表現(例: 3 + 4)。
RPN
逆ポーランド記法の英語略称。後置記法とも呼ばれ、演算子はオペランドの後に来る形でスタックを使って評価します。
演算子
加算・減算・乗算・除算など、数値を操作する符号。RPNでは必要なオペランドの後に現れ、スタックから取り出して計算します。
オペランド
計算対象となる数値や変数のこと。RPNではまずスタックに積まれ、演算子が来たときに取り出して処理します。
スタック
データを後入れ先出しで管理するデータ構造。RPNの評価で中心的に使われ、演算子が現れたときにオペランドを取り出して計算します。
式評価
表現された数式を正しく評価して値を求める過程。RPNでは順序とスタック操作が鍵になります。
計算式
数値と演算子で構成される、計算の対象となる式のこと。
アルゴリズム
RPNの式を正しく評価するための手順。代表的にはスタックを用いるアルゴリズムです。
データ構造
データを整理・管理するための枠組み。RPN評価ではスタックが代表的なデータ構造です。
電卓
RPNを採用した電卓や計算機。特にRPN電卓として知られるモデルもあります。

逆ポーランド記法の関連用語

逆ポーランド記法
式をオペランドを先に置き、演算子を後に置く後置表記。評価にはスタックを使い、左から順に読み進めます。例: 3 4 + は 7。
後置記法
逆ポーランド記法と同義の別名。ポストフィックス表記とも呼ばれ、計算機や計算機器、プログラムで広く使われます。
中置記法
普通に書く形式。オペランドと演算子を中置に配置し、括弧や優先順位によって計算順序を決めます。
前置記法
演算子をオペランドの前に置く表記。例: + 3 4。Lisp系の言語で使われることが多いです。
ポストフィックス記法
後置表記の別名。RPNとほぼ同義で使われます。
オペランド
演算対象となる数値・変数。計算の入力となる値です。
オペレータ
演算を行う記号。例えば +、−、×、÷、^ など。オペランドの数は演算子ごとに決まっています。
スタック
値を一時的に積み上げておくデータ構造。逆ポーランド記法の評価では、オペランドを順に積み、演算後の結果を戻します。
評価アルゴリズム
RPNの計算手順。オペランドをスタックに積み、演算子を見たら直前の2つを取り出して計算し、結果を再度積みます。
シャンティングヤードアルゴリズム
中置記法を後置・前置へ変換する標準的なアルゴリズム。括弧・優先順位・結合性を扱います。
式木
式の構造を木として表現したもの。後置記法は木の後順走査と対応します。
RPN電卓
逆ポーランド記法を採用した電卓。操作が直感的で、複雑な式も段階的に計算できます。
Forth言語
Forth はスタック指向のプログラミング言語で、逆ポーランド記法を自然に活用します。
優先順位と結合性
演算子には優先順位と結合性があり、同じ優先順位の演算子の評価順を決定します。

逆ポーランド記法のおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
14083viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
1942viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
840viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
581viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
568viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
535viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
527viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
457viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
440viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
421viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
364viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
345viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
340viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
319viws
select句・とは?初心者でも分かるSQLの基本と使い方共起語・同意語・対義語も併せて解説!
301viws
ダイレクトチャットとは?初心者向けガイドで使い方と注意点を徹底解説共起語・同意語・対義語も併せて解説!
295viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
294viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
292viws
解像度スケールとは?初心者でも分かる解像度スケールの基礎と使い方共起語・同意語・対義語も併せて解説!
273viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
234viws

新着記事

インターネット・コンピュータの関連記事