示例MIPS示例需要说明

时间:2013-10-16 20:44:23

标签: assembly mips

所以我对即将进行的mips测试有一个示例问题,需要澄清。

  1. 假设字数组A按此顺序存储0,1,2,3,4,5,6,7,8,9。假设A的起始地址目前在$ s0。按照以下说明,$ t1中的值是什么?
  2.   

    ori $ t0,$ 0,6

    p7L0: lw $t1, 0($s0)
    sll $t1, $t1, 2
    blt $t0, $t1, p7L1
    addi $s0, $s0, 4 
    j p7L0    
    
         

    p7L1:

    (a)2 (b)3
    (c)6 (d)以上都不是。

    在这个例子中,答案出现在8.然而我很难弄清楚它是如何得到的。在我的运行中,在命令ori中我得到6.它进入sll并且它出现0.由于0小于6,它分支到p7L1:

    澄清?

1 个答案:

答案 0 :(得分:1)

sll指令将t1乘以4,因此每次循环时它的值将为0,4,8,然后将采用分支,因为6< 8.因此答案是8。