【发布时间】:2012-04-28 09:26:01
【问题描述】:
我正在做一个项目,我必须在其中创建一个可以为 C 代码生成 MIPS 汇编代码的转换器。正在使用的编程语言是 C++,我已经完成了三个地址代码的生成,并且对如何进一步进行感到非常困惑。
【问题讨论】:
-
3 地址码?你能澄清一下吗? (并且我已经删除了您问题上的编译器优化标签。考虑到它尚未完全正常工作,我假设您没有进行优化。)
-
从寻找一个 3 地址指令的翻译开始,比如
add。你能在 MIPS 指令列表中找到对应的指令吗?也许是一个近似的等价物? -
@user - 您必须查看每条 3 地址指令并弄清楚您将如何在汇编中执行此操作。然后生成一个或多个组装说明。
-
是的,即使我正在考虑一次执行一条指令,但我并没有清楚地了解它和编译器优化,以从中间代码(三地址代码)生成汇编代码你需要先优化它。
标签: c++ assembly compiler-construction mips