问题陈述:请写一个循环来计算$t0中存储的正整数的阶乘,并在4个指令中将结果存储在$t1中。
这是我目前的代码,我相信它能工作,但需要6个指令。
这是我目前的代码,我相信它能工作,但需要6个指令。
li $t3, 1
move $t1, $t0
move $t2, $t0
LOOP: addi $t2, $t2, -1
mul $t1, $t1, $t2
bne $t2, $t3, LOOP
编辑。 这是解决方案。
li $t1 1
LOOP: mul $t1 $t1 $t0
addi $t0 $t0 -1
bgez $t0 LOOP
$t0
和$t1
(以及$zero
)以外的任何其他寄存器。如果我们要严格一点,li
不是真正的MIPS指令。它是汇编程序提供的伪指令。 - Michaelli $t3,1
襀蚐жНҐжИРori $t3,$zero,1
пЉМињЩжШѓдЄАжЭ°еНХзЛђзЪДжМЗдї§ :-) - markgz