No33-原-根据语义规则产生布尔表达式三地址代码
问题
考虑如下表达式:a < b or c < d and e < f
假定整个表达式的真假出口已分别置为Ltrue和Lfalse,则按表下面的语义规则生成的三地址代码为?(假定and优先级高于or)
产生布尔表达式三地址代码的语义规则
语义规则如下:
生成三地址中间代码的步骤
生成三地址中间代码的过程如下:
语法树
对表达式进行归约
根据产生式,语义规则,进行相应的语义动作:
三地址代码
生成的三地址代码为:
1 | if a < b goto Ltrue |
感谢
感谢访问我的个人博客的朋友,如果您感觉本站对您搜索的问题有所帮助,并感觉对本站还满意的话,顶一下吧,希望您把本站分享给您的朋友!在此对您表示由衷的谢意! :)
本文标题:No33-原-根据语义规则产生布尔表达式三地址代码
文章作者:王用
发布时间:2016-01-08 20:07:19
原始链接:http://blog.54yongf.com/编译原理/33.html
许可协议: "署名-非商用-相同方式共享 3.0" 转载请保留原文链接及作者。