【20200423】编译原理课程课业打卡十八之构造文法算符优先关系表&求解输入串算符归约过程


叮嘟!这里是小啊呜的学习课程资料整理。好记性不如烂笔头,今天也是努力进步的一天。一起加油进阶吧!
在这里插入图片描述

一、课业打卡十八之构造文法算符优先关系表&求解输入串算符归约过程

问题描述:

已知文法为:
A->A;D|D
D->D(.E)|F
F->a|(A)
E->E+A|A

(1)构造文法的算符优先关系表。
(2)给出输入串(a+a)# 的算符规约过程。

(1)构造文法的算符优先关系表。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

(2)给出输入串(a+a)# 的算符规约过程。
在这里插入图片描述

二、知识巩固

1、关于FIRSTVT & LASTVT

在这里插入图片描述

2、算符优先关系表的构造

(1)由定义直接构造

1、求出所有的FirstVT(~),LastVT(~);
2、再找到三种算符优先关系;
3、构造优先关系表填表。

(2)由关系图法构造算符优先关系表

1、求FirstVT集合:描点、连线、找元素;
2、求LastVT集合:描点、连线、找元素;
3、填表。

3、如何计算算符优先关系

1)=’关系
-直接看产生式的右部,若出现了A →…ab…或A →…aBb,则a=b;

2)<’关系
-求出每个非终结符B的FIRSTVT(B),
-若A→…aB…,则 任意b∈FIRSTVT(B),a<b;

3)>’关系
-求出每个非终结符B的LASTVT(B),
-若A→…Bb…,则 任意a∈LASTVT(B),a>b

实例如下:

文法G[E](0) E’→#E#
(1) E→E+T
(2) E→T
(3) T→T*F
(4) T→F
(5) F→P^F|P
(6) P→(E)
(7) P→i

在这里插入图片描述

4、算符优先分析算法

归约过程中,只考虑终结符之间的优先关系来确定句柄,而与非终结符无关。这样去掉了单非终结符的归约,所以用算符优先分析法的规约过程与规范归约是不同的。
为解决在算符优先分析过程中如何寻找句柄,引进最左素短语的概念。
在这里插入图片描述

5、关于句型的短语&素短语

cfg G 的句型的素短语是一个短语,它至少包含一个终结符,且除自身外不再包含其他素短语
处于句型最左边的素短语最左素短语
在这里插入图片描述

6、算符优先文法(OPG)条件

一共三个条件:

算符文法(OG)两个条件:1、无S->...AB...;
                   2、无空字产生式;
   +(额外一个条件)
                   3、任意两个终结符之间至多一种优先关系;

7、规范规约&算符优先规约 实例对比

在这里插入图片描述

Ending!
更多课程知识学习记录随后再来吧!

就酱,嘎啦!

在这里插入图片描述

注:
人生在勤,不索何获。

原创文章 88 获赞 132 访问量 5万+

猜你喜欢

转载自blog.csdn.net/qq_43543789/article/details/105842324