2

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  |
4

2 に答える 2