CASLIIの命令をまとめてみました。

プログラミング
Photo by sifpceuc on Pixabay

こんにちは、コンスキです。

CASLIIという言語をご存知ですか?

CASLⅡは基本情報処理技術者試験で使用するアセンブリ言語として存在しています。

そのため、実際のコンピュータを動かすためにある言語ではありません。

ところが今回CASLⅡを読む機会があったため、基本的な命令コードをシンプルにまとめておきます。

CASLⅡの書かれ方

CASLⅡはアセンブリ言語であるため、C言語やJavaというようなプログラミング言語と異なります。

そのため、どういう書かれ方がされているかわからないと読みづらいです。

CASLⅡでは次のような書かれ方がされています。

ラベル 命令コード オペランド1, オペランド2, …

ラベルの具体例

ラベルは他の命令から参照する時に使われる名前のようなものです。

CASLⅡは1行が1命令にになっているのですが、行にもラベルがついているとは限りません。

また、「8文字以内」、「頭文字は大文字」、「予約後以外」などの規則に従ったものであればいいため、これといって具体例はありませんが、次のようなラベルがつけられることがあります。

  • DATA1
  • LOOP
  • FANC
  • CALC

命令コードの具体例

命令コードには次のようなものがあります。

  • SART
  • END
  • LD
  • LDA
  • JUMP

オペランドの具体例

オペランド1やオペランド2、その他のオペランドには次のようなものが書かれます。

  • GR1
  • DATA1
  • 1
  • =1

よく使われる命令

よく使われる3つ命令の説明をここに残しておきます。

LD

主に次のような書き方をされます。

ラベル命令コードオペランド1オペランド2オペランド3意味
LDGR0GR1GR1の内容をGR0に入れる

LDA

ラベル命令コードオペランド1オペランド2オペランド3意味
LDAGR0DATA1DATA1の番地を実行アドレスとしてGR0に入れる
LDAGR2DATA1GR1DATA1の番地をGR1の内容を足したものを実行アドレスとしてGR2に入れる

ST

ラベル命令コードオペランド1オペランド2オペランド3意味
STGR0AGR0の内容をメモリのA番地に入れる
STGR2AGR1GR0の内容をメモリのA番地にGR1の内容を足した番地に入れる

終わりに

これからもCASLⅡの命令を自分が理解するたびにここにまとめていきます。

間違えている部分があったらコメントをいただけると嬉しいです。

コメント

タイトルとURLをコピーしました