0

我需要回答的问题是,为什么第 9 行比较失败,而第 8 行没有比较失败?

第二个问题:

我该如何解决这个问题以支持负值的乘法?

程序将 R0 和 R1 相乘并将结果存储在 R2 中。(R0、R1、R2 分别指 RAM[0]、RAM[1] 和 RAM[2]。)

多重组合:

0   @R2
1   M=0
2   @R0
3   D=M
4   @STEP
5   D;JNE
6   @END
7   0;JMP
8   @R2
9   D=M
10  @R1
11  D=D+M
12  @R2
13  M=D
14  @R0
15  D=M-1
16  M=D
17  @STEP
18  D;JGT
19  @END
20  0;JMP

多.cmp:

|  RAM[0]  |  RAM[1]  |  RAM[2]  |
|       0  |       0  |       0  |
|       1  |       0  |       0  |
|       0  |       2  |       0  |
|       3  |       1  |       3  |
|       2  |       4  |       8  |
|       6  |       7  |      42  |
|       6  |      -7  |     -42  |
|      -6  |       7  |     -42  |
4

0 回答 0