【编译原理笔记10】语法制导翻译:在递归预测过程中进行翻译,L属性定义的自底向上翻译

本文详细介绍了在递归预测分析过程中如何进行翻译,特别是针对L属性定义的自底向上翻译策略。讲解了如何在SDT中构造分析函数,以及如何将语义动作改写为栈操作,通过具体的例子展示了LR语法分析过程中的计算步骤。
摘要由CSDN通过智能技术生成

本次笔记内容:
5-7 在递归预测过程中进行翻译
5-8 L属性定义的自底向上翻译

本节课幻灯片,见于我的 GitHub 仓库:第10讲 语法制导翻译_3

在递归的预测分析过程中进行翻译


如上,先来考虑SDT的非终结符 T’ ,上图右侧为 T’ 对应的扩展后的函数,其中:

  • 黑色字体部分,表示原有的语法分析器中 T' 对应的过程
  • 蓝色的就是扩展之后的部分。

为每个非终结符A构造一个函数,A的每个继承属性对应该函数的一个形参,函数的返回值是A的综合属性值。

对出现在A产生式右部中的每个文法符号的每个属性都设置一个局部变量

对于每个动作,将其代码复制到语法分析器,并把对属性的引用改为对相应变量的引用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值