• ベストアンサー

CASLIIのFINについて教えて下さい

CASLIIの『FIN』とはどんなときに使うのか、どんな意味があるのか教えて下さい。下の2個の例のように、JUMPでFINに飛んだり、単なるラベルであったりしています。 ;100を初めて超える7の倍数 LAD GR1,0 LOOP CPA GR1,C1000 JPL FIN LAD GR1,7,GR1 JUMP LOOP FIN ST GR1,ANS RET C100 DC 100 ANS DS 1 END ;1000を16ビットの2進数で表した時1が立っている数 LAD GR1,0 LAD GR2,1 LOOP LD GR3,C1000 AND GR3,GR2 JZE ZEXT LAD GR1,1,GR1 NEXT SLL GR2,1 JNZ LOOP FIN ST GR1,ANS RET C1000 DC 1000 ANS DS 1 END

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.3

No.1です。補足質問にお答えします。 > STが最後で前にFINがついてないものもいっぱいありますよね。 > つけなければいけないものとつけなくていいもの違いを教えて下さい。 付ける、付けないに規則はありません。 お好きにどうぞと言うことです。 ただ、無駄なようでも付けておくと、 あとで最後に飛ばす分岐命令を追加する時などに楽ですね。

norichi-orange
質問者

お礼

ご回答どうもありがとうございます。 独学で勉強し始めたばかりでわからないことばかりなのです。おかげで謎が解決できて嬉しいです。

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

単なるラベルです。 JUMP ジャンプ先をラベルで書くのは普通です。(アドレスとして使う) 意味としては、#1の方が仰るように処理の終了時の処理をする場所のラベルとして使っているのでしょうね。

norichi-orange
質問者

お礼

ご回答どうもありがとうございます。 参考にさせていただきます。

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

FINはFINE(フィーネ:確かフランス語:スペル自信なし)=END FAINALと似たようなものです。 映画で最後に「FIN」とよく出ますよ。 ENDは使えないので代わりに最終処理のラベルに使うのです。

norichi-orange
質問者

補足

例の両方ともSTが最後で、STの前にFINがついていますが、STが最後で前にFINがついてないものもいっぱいありますよね。つけなければいけないものとつけなくていいもの違いを教えて下さい。