演習課題「データ領域の値を合計する」
右の環境には、CASLで、データ領域の値を足し算するプログラムを作成してあります。このファイルを修正して、以下の動作をするように修正してください。
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
データ領域の「1」から「9」までを合計する
※ 採点前に下記のコマンドを実行してください。
$ pycasl sum.cas
$ pycomet -d sum.com
$ s
…
#11:ループプログラムを作ってみよう - その2
アセンブラ言語で、繰り返し処理のプログラムをもうひとつ作成します。例として、データ領域の連続した数値を順番に足し算するプログラムを作成します。
; データ領域の値を合計する
MAIN START
LAD GR0, 0 ; 計算結果
LAD GR1, 0 ; データ領域の現在位置
LAD GR2, 1 ; 増加分
;
LOOP ADDA GR0, DATA, GR1 ; 足し算
ADDA GR1, GR2 ; インデックスを加算
CPA GR1, NUMBER
JNZ LOOP
RET
NUMBER DC 3
DATA DC 1
DC 2
DC 3
END
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