2011-06-14 143 views
1

我做在MIPS一些編程其中有一堆的32個寄存器,但我也知道,你可以存儲64位整數,是如何工作的呢?整數是否佔用兩個寄存器?如果是的話系統如何知道將兩個寄存器合併爲一個長二進制字符串64位十進制如何存儲在32位地址中?

回答

1

根據Wikipedia,32位MIPS指令集包括加載/存儲的「加載雙字」和「存儲雙字」指令從/到內存的一對連續寄存器。

對於實際的算術,它看起來像你通常必須使用多個指令。

0

您需要檢查您的平臺的文檔,因爲它可能會有所不同。例如,對於MIPS 32位,檢查這樣的事情quick reference(參見「C調用約定」的一部分)。

有關詳細信息,不過,你需要一個更完整的參考(快一個沒有列出,我可以看到任何64位運算指令,所以,如果他們不存在,你必須自己實現它們,然後可以使用自己的約定來存儲值)。