【发布时间】:2015-03-22 12:49:00
【问题描述】:
我正在研究 Dragon Book,以便为我的 DECAF 编译器创建一个中间代码生成器。
我正在阅读 backpatching 方法,它建议对布尔表达式进行以下翻译:
我发现一切都很清楚。然而,当我根据这本书实现我的翻译器时,我发现了一个问题,例如:
boolean a = false;
if(a){
x= 0;
}
我的问题是我不知道如何在没有操作数的布尔表达式中管理变量。当我有这样的事情时:
if(x>200){
....
}
翻译工作正常。如果我有一个变量作为控制流布尔表达式,谁能告诉我该怎么做?
【问题讨论】: