CPU シミュレータ Add4.asm のハック アセンブリ言語で、2 行目でテストが失敗し続けます。これを修正するためにさまざまな形式を試しましたが、わかりません。どうすれば0に設定できますか、それが問題でない場合、コードを修正するにはどうすればよいですか? ADD4 ハック アセンブリ言語のヘルプ
.asm ファイルを実行するたびに、2 行目で比較エラーが発生します。この問題の解決を手伝ってください。これが私の .asm コードで、その後に ADD4.tst が続きます。Add4.asm の行番号には明確な注釈が付けられています。
Add4 は 4 つの数値 (RAM[0]、…、RAM[3] または R0、…、R3 にある) を加算し、結果を RAM[0] (別名 R0) に格納します。プログラムは 30 サイクル以下で終了する必要があります
Add4.asm:
1. @1
2. D=M
3. @2
4. D=D+M
5. @3
6. D=D+M
7. @4
8. D=D+M
9. @5
10. D=D+M
11. @0
12. M=D
Add4.tst:
load Add4.asm,
output-file Add4.out,
compare-to Add4.cmp,
output-list RAM[0]%D2.6.2;
set RAM[0] 1,
set RAM[1] 2,
set RAM[2] 3,
set RAM[3] 4,
repeat 30
{ ticktock; }
output;
set PC 0,
set RAM[0] 0,
set RAM[1] 0,
set RAM[2] 0,
set RAM[3] 0,
repeat 30
{ ticktock; }
output;
set PC 0,
set RAM[0] -10,
set RAM[1] 5,
set RAM[2] 100,
set RAM[3] 9,
repeat 30
{ ticktock; }
output;
add4.cmp:
1.| RAM[0] |
2.| 10 |
3.| 0 |
4.| 104 |