Windows版 RPN関数電卓 を自作!
私がiPhone 3GSから現在の5Sまでずっと愛用している電卓が
コチラ、AppStoreで購入した、「MathU RPN Calc」。
RPN電卓の一番初めは、学生時代に使ったHPの関数電卓だった
のですが、今はこのiPhoneアプリです。
=キーが無いのにお気づきでしょうか? RPN=逆ポーランド
記法 (Reverse Polish Notation) の電卓です。 例えば「2+3」
を求めるとき、フツーの電卓では「2足す3は?」の語順で
[ 2 ] [+] [ 3 ] [=]
とボタンを押したら答え 5 が得られますが、逆ポーランド記法
の電卓では、「2に3を足すと?」という語順で
[ 2 ] [Enter] [ 3 ] [+]
とボタンを押すことで答え 5 が得られます。
RPNの方が実際の計算とか構文処理に関して左から右へ自然
な順序になっています。 だって、フツーの電卓の方は [ 2 ] [+]
と来た段階で一旦切って考えれば明らかですが、この段階で
[+] と言われても、"足す数値"はまだ分からないので、具体的
には何もできないでしょ? そして [ 3 ] [=] が与えられてから
あらためて [+] の所に戻って、初めて実際に「足す」処理に
取り掛かるわけです。
さらに「カッコ ( )」ボタンもありません。 代わりに"スタック"
という特別なメモリが実装されています。 "スタック"はマイコン
の割り込み処理とかアセンブラ言語をご存知の方ならお分かり
ですよね。 そうそう、「RPN記法 vs フツーの電卓の記法」って
正に「アセンブラ vs 高級言語」なんですね。
RPN電卓を使い慣れると、もう手放せなくなってしまいます。
(って、私だけ?)
iPhoneではMathUという素晴らしいアプリに出会えたのですが
Windows上で使う電卓では、好みのデザインのRPN電卓が見つ
けられずにいました。 そしてなぜか今まで別の解にも気付き
ませんでした。
そうだ、自分で作れば良いじゃないか!
で、Visual C#で作ってみました。(クリックで拡大できます)
自分がいつもMathUで使っている必要十分な機能だけ実装しま
した。例えば、三角関数の角度単位は"deg"だけ、など。
もちろん、マウスだけでなく、キーボードからキー入力だけでも
操作可能です。 数値以外の各処理・関数は、例えば sin なら
「s」など、ショートカットキーが割り当ててあります。 [Help]
ボタンを押す (=hキー) と、各機能の対応キーが
のように表示されます。(画像はINVキーも押した状態)
« EDSAC から 自作PC まで - 出会ったコンピュータ達 その 1 | トップページ | 8J1MITO - 「水戸の梅まつり」記念局を訪問 »
「コンピュータ」カテゴリの記事
- 【続】Windows版 RPN関数電卓 を自作!(2023.04.28)
- "Turbo HAMLOG"のデータを i Phone で活用する!(2017.08.16)
- 「40年前のマイコンを作って動かす」 第八話 : 動作確認3(2016.03.04)
- 祝 30万アクセス! - お気に入りの写真セレクト(2016.02.26)
- 「40年前のマイコンを作って動かす」 第七話 : 動作確認2(2016.03.02)
コメント
この記事へのコメントは終了しました。
« EDSAC から 自作PC まで - 出会ったコンピュータ達 その 1 | トップページ | 8J1MITO - 「水戸の梅まつり」記念局を訪問 »
おはようございます。
逆ポーランドは,昔FORTHで使ったことがありました。マニアックな内容ですね♪
スマホのアプリを簡単に作れるのは素晴らしいですね。
僕のはガラケーなので使わせてもらえません...。
色々楽しまれていますね♪
投稿: あぶ | 2015年3月 1日 (日) 10時19分
あぶさん、お早うございます。
> スマホのアプリを簡単に作れるのは素晴らしいですね。
すみません、説明不足だったようですね。作ったのは、Windows
の上で動く電卓でした。スマホ用アプリは作るのに特別な環境
が必要なので、敷居が高くて手が出せないでいます。
FORTHもマニアックじゃないですか?
投稿: Donn Tacos | 2015年3月 1日 (日) 10時46分