演習課題「ラベルのアドレスを読み込む」
右の環境には、CASLでメモリからレジスタにデータを読み込むプログラムを作成してあります。このファイルを修正して、以下の動作をするように修正してください。
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
ラベルAのアドレスをGR2に転送する
※ 採点前に下記のコマンドを実行してください。
$ pycasl calc.cas
$ pycomet -d calc.com
$ s
$ s
$ s
#02:LAD命令を使ってみよう
COMETⅡのLAD命令の使い方を学習します。LAD命令は、オペランドに書いた値を直接レジスタに読み込みできます。
LAD命令は、オペランドに記述したアドレス自体を読み込む命令です。この機能で、オペランドの値を直接レジスタに読み込めます。命令 書き方(命令コード、オペランド) 説明
ロードアドレス: Load ADdress LAD r,adr[,x] r ← 実行アドレス
; レジスタに値を読み込む
MAIN START
LAD GR0, 10
RET
A DC 05
END
CASLⅡでは、数値の前に「#」をつけると、16進数表記になります。; レジスタに値を読み込む
MAIN START
LAD GR0, #10
RET
A DC 05
END
ラベルAに該当するアドレス自体を読み込む; レジスタに値を読み込む
MAIN START
LAD GR0, A
RET
A DC 05
END
$ pycasl calc.cas
$ pycomet -d calc.com
CASLIIアセンブラ & シミュレータ PyCASL2 & PyCOMET2
http://www.image.med.osaka-u.ac.jp/member/nakamoto/pycasl2/index.html
CASL - Wikipedia
https://ja.wikipedia.org/wiki/CASL
アセンブラ言語CASL2の仕様
https://www.chiba-fjb.ac.jp/fjb_labo/casl/CASL2spec.html#2-3
システムCOMET2の仕様
https://www.chiba-fjb.ac.jp/fjb_labo/casl/COMET2spec.html
CPU - コンピュータの基礎知識 | ++C++; // 未確認飛行 C
https://ufcpp.net/study/computer/CPU.html