人気ブログランキング | 話題のタグを見る

ブログトップ

電子工作やってみたよ

人間コンパイラでHP電卓

前回思いついた人間コンパイラ手順書を作ってみました。
最初はBASICで考えて、あとは機械的に置き換えていくだけです。
構造化のループ処理のみですが、これさえあれば、楽になるのでないですか。
使い込んでいくうちに良くなると思います。
最初 BASICで書いてあります。
次に 同等のものを HP電卓の逆ポーランド法でかきました。

*************************************
if  ~ then ~ endif

if X=0 then ----------- Xがゼロならば以下を実行
A = 1 -------------- Xがゼロの時実行する
endif ------------------ エンド


X キ 0 ------------Xをチェック
GTO 5 ------------Xがゼロならば以下を実行
1 ------------------ループ内処理
STO 1 -------------ループ内処理
LBL 5 -------------エンド

*************************************
For ~ Next

for i = 1 to 3
  print i
next



3 ---------ループ回数の3をセット
STO 0 ----同上
LBL 5 ------ループ処理ルーチンの先頭
RCL 0------ループ内処理
PAUSE------ループ内処理
DSZ---------カウンターを1減算してゼロでないならLBL 5へ戻る
GTO 5 -----処理のエンド

*************************************
while ~ wend

a=0 ---------------初期値をゼロとする
while( a<7) -------aが7以下の時ループを回す
a=a+1 ------------aを1つインクリメントする
print a -------------aをプリントする
wend --------------ループの終わり



STO 3
LBL 1 --------------ループの先頭
1
STO +3 ------------カウンターを1つインクリメント
----------------------ここにループ内処理を置く
RCL 3 --------------カウンターを表示する
PAUSE --------------カウンターを表示する
7 --------------------比較する数値をセット
X > Y ---------------比較する
GTO 1 --------------未到達なら LBL 1 へ行く





人間コンパイラでHP電卓_c0335218_06050533.jpg

















by telmic-gunma | 2016-10-30 17:46 | HP電卓