2016-02-23 42 views
0

我編寫了程序以從用戶獲取4個值並將其存儲。但我無法弄清楚如何把它變成了「清單」(。空間):MIPS:如何將值存儲到數組中

.data 
list: .space 16 
msg: .asciiz "Enter 4 numbers: " 
.text 

main: 
la $a0,msg # display prompt string 
li $v0,4 
syscall 

li $v0, 5 # read integer 
syscall 
add $s0, $v0, $zero #store input1 to s0 

li $v0, 5 # read integer 
syscall 
add $s1, $v0, $zero #store input2 to s1 

li $v0, 5 # read integer 
syscall 
add $s2, $v0, $zero #store input3 to s2 

li $v0, 5 # read integer 
syscall 
add $s3, $v0, $zero #store input4 to s3 




exit:  
    li $v0, 10 # exit system call 
sysca 

回答

2

我無法弄清楚如何把它變成了「清單」

通過加載陣列的基址到某個寄存器,然後使用sw指令有存儲數據:

la $a1, list 

# ... read the integers ... 

sw $s0, 0($a1) 
sw $s1, 4($a1) 
sw $s2, 8($a1) 
sw $s3, 12($a1) 

我建議你下載MIPS32™架構對於P程序員 第二卷:MIPS32™指令集