逆ポーランド記法と言う数式の記述方法があります。


例えば、1+2の場合、次のように記述します。


1 2 +


「1と2を足す」と読めるように、日本語的な記法です。


逆と言うからには、逆じゃないポーランド記法というのもあって、その場合、


+ 1 2


のように記述します。


「足すんだよ、1と2をね」と読む感じです。


逆ポーランド記法は、コンピュータを使って計算させようとした時に、少ないメモリに数を出し入れすると言うシンプルな構造にすることができて、この記法を使った電卓も有ります。





リバースポーランドの意味で、RPN電卓と呼ばれていて、現在購入できるのはHP製くらいじゃないでしょうか。


RPN電卓は、使い方を知らないと、1+1の計算すらできないと言う恐ろしい電卓です。


例えば、次の計算は、何をやりたいかわかるでしょうか?


5 4 3 ×+


最近は見かけませんが、スプリング式のコイン入れと言うのがありました。


子供専用だったのか、駄菓子屋さんで安く売っていました。


10枚位のコインが入るもので、最初に入れたコインは、どんどん下に押し込められて行くので、取り出せるのは最後になります。


RPN電卓には、このコインケースと同じ仕組みのスタックと言うメモリがあります。


5 4 3 × +の場合、最初に入力した5は、4と3の入力によって下に押し込められるので、最後まで放っておかれます。


5の後でに入力した4と3も同じようにスタックに押し込められますが、次に入力した×によって、3と4の掛け算が行われます。


×をするためには2つの数が必要になるので、3と4がスタックから順に救い出されるわけです。


3×4は12ですが、今度は12がスタックに押し込められます。


やっと出られると思った5は、12によって、また下に押し込められます。


ここで最後の+が、12と5に救いの手を差しのべます。


足すためには2つの数が必要なので、まず12が救い出され、残っていた5も救い出されて、12+5が行われます。


ですから、5 4 3 × +の答えは、17です。


+−×÷の計算は必ず2つの数が必要になるので、その2つの数を出し入れ出来るメモリと、あと2つくらいのメモリがあればいいので、コンピュータから見るとシンプルな仕組みで回路を作れます。


人間からすると、RPN電卓は、この仕組みに従って使うので、扱うのはなかなか大変ですが、頭の体操にはとてもいいので、老化防止を兼ねて、最近はこれを使っています。