2012-04-28 40 views
3
frogger: 
    jal teechar 
    jal update_frog 
    lw $t0,game_indicator 
    li $t0, 0 

好的,這是功能。我有teechar和update_frog函數完全編寫和工作。我理解前兩個子彈,但不知道最後兩個。我如何在MIPS中編寫最後兩個子彈?用全局變量在MIPS中編寫函數?

這裏是功能說明:

寫MIPS功能青蛙,它沒有參數,並返回一個字符(使 測試更容易)。它執行以下操作:

  • 調用您的teechar來讀取和回顯字符c。
  • 調用你的update_frog(c)。
  • 如果c不爲零,則將c存儲在全局變量中以指示遊戲結束,以及它如何結束。 (當然,您必須將該全局變量初始化爲零。)
  • 返回c。

這裏是我的代碼:

frogger: 
    jal teechar 
    jal update_frog 

對不起,我只是有麻煩思考如何做到這一點:(

+0

你有什麼特別的堅持?你知道如何將值存儲到一個位置嗎? – 2012-04-28 22:24:50

+0

即時貼在最後兩顆子彈上。是的,我不完全確定如何存儲c – user977154 2012-04-28 23:18:08

+0

的值可以有人請幫助我嗎? – user977154 2012-04-29 23:01:42

回答

1

對於全局變量的緣故,任你必須通過爭論或使用特殊用途寄存器由於您已指定該函數不需要任何參數,因此每當調用青蛙時,都必須預留一個寄存器來保存c的值,然後再讀取該寄存器中的值。

它不是來自高級編程語言的乾淨解決方案,但是您現在正在組裝,並且不妨將手弄髒!