试论语法规则的递归性(递归下降法生成中间语言)
先消除左递归(e有左递归),然后避免回溯(这个问题不存在)。语法更改为:
卫衣
电子邮件' |浮动电子邮件' |(电子邮件)
E'- Op EE'|
Op- |-|*|\
好了,成交!
既然楼主要,我就自己设计一个:
标准时间|标准时间|标准时间
信托基金|信托*基金|信托/基金
f-intc | float TC |(S)
我还是有点疑惑,那就是为什么楼主认为生产预测集的交集不是零能量?
原始方法的非最终预测集的交集已经为空。S和E的第一组是{INTC,FLOAATC,(}),OP的第一组是{,-,*,\}。请告诉我哪个路口不是空的?
谢谢你的建议。我理解。确实我原来的语法预测集的交集不是空的(Khan,我没有考虑e ' pushing empty的情况),但是我写的第二个语法绝对符合递归下降分析,而且我已经编程了计算器。
消除第二语法的左递归:
' S-TS '
S'-S''S'|
S''- T|-T
' T-FT '
T'-T''T'|
T''-*F|/F
f-intc | float TC |(S)
可能有疏忽,请给我你的建议!
(注意:因为百度知道答案数量是有限制的,以后可能发现的疏忽只能和楼主私下聊。我真的很抱歉!)