0

我必须使用 IAS 指令集编写一个程序,该程序将遍历两个数组并将一个数组的每个元素添加到另一个数组中,并将结果存储在第三个数组中。因此,例如,我必须将 A(1) + B(1) 存储在 C(1) 中,然后将 A(2) + B(2) 存储在 C(2) 中,依此类推,直到我到达A(20) + B(20) 存储在 C(20) 中。但我不知道如何在 IAS 中创建一个计数器控制循环......无论如何......这是我所做的......但它不起作用:)

00000001 LOAD M(A[1]) Transfer M(A[1]) to the accumulator
00000101 ADD M(B[1]) Add M(B[1]) to AC and store result in AC
00100001 STOR M(C[1]) Transfer contents of accumulator to memory location C[1]

谢谢你的帮助 :)

4

1 回答 1

1

对于未来的任何人。这个问题实际上有很多解决方案,这是我选择的一个(可能需要一些详细说明):

* Initialize a variable 'count' to 999
Label: TOP
00000001    LOAD M(A[count])            Transfer M(A[count]) to the accumulator
00000101    ADD M(B[count])             Add M(B[count]) to AC and store result in AC
00100001    STOR M(C[count])            Transfer contents of accumulator to memory location C[count]
00001010    LOAD M(address of count)    Transfer the contents of M(address of count) to the AC
00000110    SUB M(the number 1)         Subtract one from AC and store in AC
00100001    STOR M(D)                   Transfer contents of AC to location M(D)
00001111    JUMP+ M(X,0:19)             If number in accumulator is non-negative take next
                                        instruction from left half of M(X)
LH: go to TOP
RH: exit
于 2012-04-07T17:46:06.153 回答