【问题标题】:translate mips pseudo instruction into machine code将 mips 伪指令翻译成机器码
【发布时间】:2014-03-06 04:06:52
【问题描述】:

我知道如何将常规 MIPS 代码翻译成机器语言,但是如何将伪指令转换成机器代码呢?例如伪分支指令 ble(branch on less equal)。我在 mips 参考表上找不到 ble 的操作码。我该如何翻译它? 我试图将 ble 解析为两个常规指令, ble $t0, $t1, L >> sub $t0, $t0, $t1 blez $t0, L 然后将两条指令翻译成机器码。似乎是对的?请帮忙...

【问题讨论】:

    标签: mips pseudocode machine-code


    【解决方案1】:

    我花了几分钟谷歌搜索,试图找到一些文档,其中列出了 MIPS 汇编中的所有伪指令及其翻译,但未能成功。

    相反,this link 似乎有足够的信息来传达这个想法。

    为了解决您的 ble $rt, $rs, LABEL 伪指令的具体示例,我相信正确的指令转换为:

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

    $at 当然是为汇编程序保留的寄存器 - 例如这样的例子。

    【讨论】:

    • 非常感谢,我现在明白了。 ble的翻译方式有很多种吧?只要翻译的功能和ble一样?
    • 可能有不止一种方法可以做到这一点,但当然您正在寻找最快的方法。很高兴听到我帮助了你,如果它对你有用,请接受答案:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    相关资源
    最近更新 更多