我正在編寫一個用戶輸入字符串的程序。該字符串默認存儲在$ v0寄存器中,但是我想將$ v0中的數據複製到String標籤,所以如果我在程序中將$ v0用於其他目的,則用戶輸入不會損壞。我弄清楚如何去做。如果有人能告訴我如何去做,我會很高興。如何在字符串標籤中存儲字符串
問候
我正在編寫一個用戶輸入字符串的程序。該字符串默認存儲在$ v0寄存器中,但是我想將$ v0中的數據複製到String標籤,所以如果我在程序中將$ v0用於其他目的,則用戶輸入不會損壞。我弄清楚如何去做。如果有人能告訴我如何去做,我會很高興。如何在字符串標籤中存儲字符串
問候
在垃圾消息,服務於讀出來自用戶的字符串是服務,這需要作爲參數:
$a0
:一個指向緩衝區的指針,其中字符串將寫入$a1
:緩衝區的大小一旦系統調用的回報,緩衝區將與輸入文本(最多至最大的$a1
字節)被ovewritten,$v0
不受影響
實例:
.data
buffer: .space 128
.text
la $a0, buffer
li $a1, 128 # maximum number of bytes to be read
li $v0, 8
syscall
li $ a1,128在做什麼?你從哪裏將用戶輸入從$ v0複製到緩衝區? – user1698102
@ user1698102:從鍵盤讀取一個字符串的'syscall'在'$ a0'中接收一個指向將存儲字符串的緩衝區的指針,並在'$ a1'中接收該緩衝區的大小(也就是最大數量字節從控制檯讀取)。您不必使用'$ v0'從鍵盤讀取字符串。請注意'$ v0'只是另一個寄存器(32位寬),所以它實際上不能保存實際讀取的字符串。 – gusbro
哪'syscall'是你在用嗎?你可以發佈你到目前爲止的任何代碼嗎? –