编译原理——证明文法具有二义性

谁说我不能喝 提交于 2019-12-15 02:55:26

证明一个文法具有二义性我们需要掌握两个知识点。

1.语法分析树

定义很简单,就是把一个句型的推导写成树的形式,这种表示法就叫语法分析树,或者简称为语法树。大概是这个样子的
在这里插入图片描述

2.二义性

一个文法存在某个句子对应两棵不同的语法树,则称这个文法是二义的。也就是该句子有两个不同的最左(最右)推导。


ok,让我们
在这里插入图片描述
证明下列文法G(S)是二义的
S->Ac|aB
A->ab
B->bc

过程很简单就是自己定义一个句子,然后说明这个句子有两个语法树就可以了。
这里定义句子是abc,对应的两个语法树像这个样子
在这里插入图片描述
所以该文法是二义文法。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!