This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Single Assignment Programming

SPRU733A  416页 ,两个例子要表达什么意思?

这个程序一定是并行执行的吗?

LDW .D1 *A0,A1
ADD .L1 A1,A2,A3     不就是A1先赋值成10,然后和A2相加给A3吗?

怎么datasheet上边的解释说这样就错了呢?

如果两个指令之间产生中断,停止都停止,执行都同时执行,又有什么问题呢?

  • 你好,并不是如你理解的

    “LDW .D1 *A0,A1
    ADD .L1 A1,A2,A3     不就是A1先赋值成10,然后和A2相加给A3吗?”

    这里的情况是:The ADD instruction, which is in a delay slot of the LDW , sums A2 with the value in A1 (0) and the result in A3 is just a copy of A2.

    ADD指令并没有使用LDW指令的结果,即没有使用A1赋值的结果,而是使用A1之前的值。