2020.5.21
前へ
次へ
ホームページトップへ戻る

[新連載]復活!TINY BASIC
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
すべてはここからはじまりました。
中日電工も。
40年前を振り返りつつ新連載です。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜



[第4回]


●TINY BASICの文法(2)

前回に続いて今回もTINY BASICの文法の説明の続きです。



[式]
式は数、変数、配列、関数を演算子でつないで構成される。
+または−を式の先頭に置くことができる。
式を左から右に計算した結果がその式の値になる。
ただし*/は+−に優先して計算され、+−は比較演算子に優先して計算される。
計算順序を変える記号として()を使うことができる。

[文](行)
文は1〜32767に続けて1または複数の命令を記述することで構成される。
ひとつの文の中で複数の命令を記述するときは命令を”;”(セミコロン)で区切って記述する。
その場合”GOTO”、”STOP”、”RETURN”は文の最後に記述しなければならない。



[プログラム]
TINY BASICのプログラムは1以上の文で構成される。
”RUN”コマンドが実行されると、プログラムは若い行番号の文から順に実行される。
しかし”GOTO”、”GOSUB”、”STOP”、”RETURN”命令によってその実行順序を変えることができる。
1つの文の中では左から右の順に命令が実行される。
”IF”命令によってその右にある全ての命令をスキップさせることができる。

[命令]
TINY BASICの命令とそのサンプルを以下に列記する。
命令は;(セミコロン)でつなぐことができる。
1または複数の命令によって構成された文をメモリに保存するためには文の先頭に行番号をつけなければならない。
例文では行番号、セミコロンは省略してある。

REMまたはREMARK命令

これはコメント文である。
この後ろには何でも書くことができる(ただし半角英数記号にかぎる)。

REM this is a sample

のように使う。
この命令文はTBI(おそらくTiny Basic Interpreterの略)によって無視される。

LET命令

ある変数または配列にその右に示す計算式の計算結果を代入する。
LET命令に記述する計算式は”,”(カンマ)で区切って複数記述することができる。

(例1)LET A=234−5*6,A=A/2,X=A−100,@(X+9)=A−1

最初の式で変数Aには234−5*6の結果(すなわち204)が入る。
その次の式によってAにはA/2(すなわち102)が入る。
さらにその次の式によってXにはA−100の結果(すなわち2)が入る。
最後の式によって配列@(11)には101が入る(なぜなら11はX+9の結果であり、101はA−1の結果だから)。

(例2)LET U=A#B,V=(A>B)*X+(A<B)*Y

UにはAとBの値が異なるか等しいかによって1または0がはいる。
VにはAがBより大きければXの値が入り、AがBより小さければYの値が入り、AとBが等しければ0が入る。

[注記]
上の英文では明記されていないがLET命令は”LET”を省略することができる。
LET A=234−5*6,A=A/2,X=A−100,@(X+9)=A−1
LET U=A#B,V=(A>B)*X+(A<B)*Y
はそれぞれ
A=234−5*6,A=A/2,X=A−100,@(X+9)=A−1
U=A#B,V=(A>B)*X+(A<B)*Y
と書いても正しく実行される。

次回に続きます。

復活!TINY BASIC[第4回]
2020.5.21upload

前へ
次へ
ホームページトップへ戻る