以下说明有什么问题?

时间:2013-08-18 21:10:22

标签: assembly mips mips64

在查看过去的考试试卷时,坚持一个问题。问题是“如果有的话,以下说明有什么问题?”

.text
   dadd r2,r0,10
   j r3
   dsub r4,r1,N(r0)

1 个答案:

答案 0 :(得分:1)

这取决于您使用的汇编程序。但是,如果我们假设您正在使用一个严格按原样查看指令的汇编程序:

dadd r2,r0,10

dadd指令将三个寄存器作为其操作数。对于操作数r2,r0,10,您可以使用daddi(双字加立即)。


j r3

j指令需要绝对地址(即j some_label)。对于寄存器间接跳转,您可以使用jr指令。


dsub r4,r1,N(r0)

dadd类似,dsub也需要三个寄存器作为其操作数。据我所知,没有dsub的变体接受内存位置作为其操作数之一。该指令必须分为两部分(例如ld r4,N(r0),然后是dsub r4,r1,r4)。