句法分析
串语言的句法分析
上一节我们介绍过了串语言的自动机分析,这一节我们主要介绍串语言的句法分析。
- 句法分析概要
利用产生式直接推导,实现串语言的识别。句法分析是一种遍历算法——穷举所有可能。
- 句法分析方法分类
自顶向下推导
给定文法G和待识别符号串x ,从起始符S开始,利用产生式集合P中的产生式,尝试推导出符号串x。
自底向上推导给定文法G和待识别符号串x ,从符号串x开始,利用产生式集合P中的产生式,尝试反向推导(化简)到起始符S 。
- 自顶向下推导
自顶向下推导的快速拒绝规则:
规则一:串长不足的拒绝
推导过程中,串长小于x的长度,但串中已经没有非终止符号。
规则二:串长超出的拒绝
推导过程中,串长大于x的长度,但串中仍有非终止符号。
举例说明:
绿色字体表示快速拒绝,红色表示接受。
- 自底向上推导
约简技巧:自底向上推导过程中的句柄
句柄,即最左短语,逐个试探最左短语,是否可以用产生式约减。
举例说明: