人気ブログランキング |

体重と今日食べたもの

k1segawa.exblog.jp

ダイエット

ブログトップ

ポケコン PC-G850VでIchigoJam(4/8)

ちょっと休憩。

プルアップ・プルダウンは調査中なので、今話題のIchigoJamで、「計算機をつくってみよう IchigoJamで学ぶマシン語その1」のBASICプログラムが面白そうだったので移植。

【BASICプログラム】
90:DIM A(40)
100:A(0)=3:A(1)=5:A(2)=10001:A(3)=7:A(4)=10003:A(5)=10005:A(6)=1:A(7)=10000:REM 3 5 + 7 * ? END
110:I=0:S=20
120:N=A(I):I=I+1
130:IF N<10000 THEN A(S)=N:S=S+1:GOTO 120
140:N=N-10000
150:IF N=0 END
160:IF N=1 THEN A(S-2)=A(S-2)+A(S-1)
170:IF N=2 THEN A(S-2)=A(S-2)-A(S-1)
180:IF N=3 THEN A(S-2)=A(S-2)*A(S-1)
190:IF N=4 THEN A(S-2)=A(S-2)/A(S-1)
200:IF N=5 PRINT A(S-1)
210:S=S-1:GOTO 120

IchigoJamの文法とは若干違うが、ほぼ同じ。配列の宣言だけ必要で、かつ60以降をスタックにするとあるが、もったいないので20以降にした。(計40)

PC-G850Vでは直接実行時の配列への代入のマルチステートメントが出来ないので、A(0)=1など1行ずつ入力すれば、GOTO 110で実行可能。(PC-E500では可能)

きちんとRUNで56、GOTO 110で2が表示された。

次のLET文はDATA文とREAD文で代用可能。
90:DIM A(40):I=0
100:READ A(I):IF A(I)<>9999 THEN I=I+1:GOTO 100
(以下同じ)
220:DATA 3,5,10001,7,10003,10005,1,10000,9999:REM 3 5 + 7 * ? END

こちらはさすがに直接実行時の代入は出来ないな~
by k1segawa | 2015-04-09 22:56 | ポケコン | Comments(0)