MIPS,为什么这个分支不起作用?

时间:2015-06-17 18:30:35

标签: arrays branch mips

我必须从声明pp:.space 40的数组中取一个bne取一个参数,在该数组中我输入整数,0或1,它是一个标志。 但无论我做什么,bne永远不会奏效!我怎么必须传递参数?

li $s5, 0
li $t1, 10
la $s0, pp # address 
la $s1, nome # address 
la $s2, cognome # address 
la $s3, interessi # address 
la $s4, userid # address

looplista:
beq $s5, $t1, exit

# check flag


printarray:
lw $t2, 0($s0) 


li $t0, 0
bne $t0, $t2, SALTO  

我如何存储

la $s1, pp

mul $t2, $s7, 4
add $s1, $s1, $t2      #s7=0 array size counter

# prompt for name
li      $v0, 4
la      $a0, ppdom          
syscall                         #ask name

# store name (max 4 bytes) to pp_array ($s1)  
move $a0, $s1
li      $a1, 4
li      $v0, 5
syscall

1 个答案:

答案 0 :(得分:0)

我解决了这个问题,读取int函数返回$v0中的valor,我使用了$a0

la $s1, pp

mul $t2, $s7, 4      #s7=0 array size counter

# prompt for name
li      $v0, 4
la      $a0, ppdom          
syscall                         #ask 

li $v0, 5
syscall
sw $v0, pp($t2)