Compiler construction c语言编译三地址码程序

Compiler construction c语言编译三地址码程序,compiler-construction,Compiler Construction,我不明白,a+a*(b-c)+d*(b-c)这个表达式怎么编译?我需要C语言的这个。在任何语言中,在数学运算中,大括号()都将被优先考虑。如果有东西是用()写的,它将首先被执行。稍后*和/将获得下一个优先级。因此,如果未给出(),则将执行乘法和除法。然后执行加法和减法 a+a*(b-c)+d*(b-c) 这里(b-c)将首先执行,因为有大括号。然后将执行a*(b-c)和d*(b-c)。最后,所有结果都被添加。我甚至不知道答案的形式,更不用说它应该包含什么了。@ScottHunter我希望他是想知

我不明白,a+a*(b-c)+d*(b-c)这个表达式怎么编译?我需要C语言的这个。

在任何语言中,在数学运算中,大括号()都将被优先考虑。如果有东西是用()写的,它将首先被执行。稍后*和/将获得下一个优先级。因此,如果未给出(),则将执行乘法和除法。然后执行加法和减法

a+a*(b-c)+d*(b-c)


这里(b-c)将首先执行,因为有大括号。然后将执行a*(b-c)和d*(b-c)。最后,所有结果都被添加。

我甚至不知道答案的形式,更不用说它应该包含什么了。@ScottHunter我希望他是想知道它是如何执行的。不,我需要C语言的解决方案,C语言的代码。@mhtamun什么代码?整个代码需要从包含类似表达式的字符串/文件转换为三地址代码表示?祝你好运。我需要一个C语言的解决方案。你能给出它背后的工作原理吗?你所说的解决方案是什么意思?我给出了它的工作原理。所以你们自己试试。用C代码程序求解。这是一个数学表达式。