MIPS,为什么这个分支不起作用?
MIPS, why this branch doesn't work?
我必须做一个 bne
从声明为 pp 的数组中获取一个参数:.space 40,我在该数组中放入整数 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
我解决了问题,读取int函数return $v0
中的勇气,我用了$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)
我必须做一个 bne
从声明为 pp 的数组中获取一个参数:.space 40,我在该数组中放入整数 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
我解决了问题,读取int函数return $v0
中的勇气,我用了$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)