gpt4 book ai didi

C++ 到 MIPS 汇编

转载 作者:行者123 更新时间:2023-11-28 05:55:41 27 4
gpt4 key购买 nike

如果我将此代码传输到 mips。

int arr[3];

cin>>arr[0];

cin>>arr[1];

arr[1]+=arr[0];

cin>>arr[2];

arr[2]+=arr[1];

如果我在 $t0 中有 arr[0] 的值,在 $t1 中有 arr[1] 并且在 $s0 中有 arr 的地址。

在这一行

arr[1]+=arr[0];

我应该怎么做?像这样直接使用 $t1 和 $t0

add $t1,$t1,$t0

或者我应该再次从寄存器中的内存中获取值,然后像这样执行添加指令:

lw $s1,($S0)

lw $s2,4($S0)

add $s2,$s2,$s1

编译器做什么?

最佳答案

如果您已将值正确加载到 $t0$t1,则无需再次从地址获取值。

编译器非常复杂,编译器生成的内容取决于很多因素,例如 Tilo 提到的优化。最好的查看方式是自己编译并查看生成的代码。

关于C++ 到 MIPS 汇编,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34189688/

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