簡體   English   中英

在 MIPS 中從用戶讀取 Int

[英]Reading Int from User in MIPS

我正在嘗試讀取用戶的輸入。 我對我的代碼非常有信心,但由於某種原因,我每次都會遇到編譯錯誤。 它說“28.8:語法錯誤”。 從我的測試來看,第 28 行的系統調用並沒有太大問題,但它是文件的最后一行(將數據塊移到底部導致錯誤仍然發生在最后一行)。 我不太確定出了什么問題以及從哪里開始。

.data
    prompt: .asciiz "Enter number: "
    message: .asciiz "\nYour number is: "

.text

main:
    #Ask for number
    li $v0, 4
    la $a0, prompt
    syscall

    #read number
    li $v0,5
    syscall

    #store number
    move $t0, $v0

    #display message
    li $v0, 4
    la $a0, message
    syscall

    #print number
    li $v0, 1
    move $a0, $t0
    syscall

您代碼中的錯誤可能不在第 28 行,但我認為是由於缺少終止代碼,即

li $v0, 10
syscall

我們通常使用終止碼來退出程序。 不這樣做可能會出現“嘗試在 0x00400058 處執行非指令”之類的錯誤。 嘗試將其放在代碼末尾以查看錯誤是否再次發生。 我在QtSpim上試了一下,添加終止碼后沒有遇到錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM