gpt4 book ai didi

mips - 将寄存器值乘以 MIPS 中的常数?

转载 作者:行者123 更新时间:2023-12-05 03:08:57 28 4
gpt4 key购买 nike

我正在学习如何执行 MIPS,但我对乘法感到困惑。假设我正在将以下 C 代码转换为 MIPS。

c = b + a*3 

a,b,c分别存放在寄存器$s1,$s2,$s3中。我应该如何在 MIPS 中编写 a*3?是否有用于乘法的 addi 类型指令,或者我是否将 3 存储在临时寄存器中并像这样使用 mult 运算符?

addi $t0, $zero, 3
mult $s1,$t0

如果是这样,我如何获得此操作的最终值或产品以完成我的 C 代码?

最佳答案

MIPS 指令集不提供具有立即值的 mult 指令。因此,您必须将值存储到临时寄存器中,然后使用 mult 指令。 mult 指令的结果将存储在 lo 和 hi 寄存器中,分别给出结果的低 32 位和结果的高 32 位。

关于mips - 将寄存器值乘以 MIPS 中的常数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44234756/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com