2014-03-06 172 views
0

我知道如何將常規MIPS代碼轉換爲機器語言,但是如何將僞指令轉換爲機器代碼?例如僞分支指令ble(分支不太平等)。我無法在mips參考表中找到ble的操作碼。我如何翻譯它? 我試圖將ble解析成兩條正則指令, ble $ t0,$ t1,L >> sub $ t0,$ t0,$ t1 blez $ t0,L 然後將這兩條指令翻譯成機器碼。這看起來是對的嗎?請幫助...將mips僞指令轉換爲機器代碼

回答

1

我花了幾分鐘的時間嘗試查找一些列出MIPS程序集中所有僞指令及其翻譯的文檔,但無法取得成功。

取而代之的是,this link似乎有足夠的信息來實現這個想法。

爲了解決您的ble $rt, $rs, LABEL僞指令的具體例子,我認爲,正確的翻譯成正確的指令是:

slt $at, $rs, $rt 
beq $at, $zero, LABEL 

這裏當然$at是彙編程序保留的寄存器 - 對於這樣的情況下, 。

+0

非常感謝你,我現在明白了。有很多方法可以正確翻譯?只要翻譯的功能與ble相同? – user3330872

+0

可能有不止一種方式來做到這一點,但當然你正在尋找儘可能快的方法。很高興聽到我幫助你,如果它爲你工作,請接受回答:) –