编译原理 6节.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 自下而上分析和优先 分析方法 编译原理 陈炬桦 isscjh@mail.sys.edu.cn 6.2 短语与句柄 定义6.1 文法G[S]: S xUy,U α 称α是句型xαy相对于U的短语。 S xUy,U ==α 称α是句型xαy相对于U的直接短语或简单短语。 最左直接短语称句柄。 6.3 移进-归约方法 例 6.4 G32[Z] Z→AB A→aAb | ab B→bB | c 6.4 有关文法的一些关系 关系:一个n元关系R定义为一个有序的n元组集合。 x1,x2,x3,…,xn 满足关系R,当且仅当有序n元组 x1,x2,x3,…,xn)∈R 关系具有以下基本性质: ⑴ 自反性: 任意x∈Σ,有xRx ⑵ 对称性: 任意x, y∈Σ,任意xRy,有yRx ⑶ 传递性: 任意x, y, z∈Σ,有xRy,yRz则有 xRz 与文法有关的一些关系: ⑴ 关系和 x, y∈Σ,R1和R2是Σ上的两个关系,R1与R2的两个关系和记为R1+R2。 x(R1+R2)y 当且仅当 xR1y或xR2y ⑵ 关系积 R1和R2是Σ上的两个关系,R1与R2的两个关系积记为R1R2。 xR1R2y 当且仅当 存在w∈Σ,使得xR1w与wR2y ⑶ 传递闭包 关系R的传递闭包记为R+,x, y∈Σ, xR+y 当且仅当存在n0,使得xRny ⑷ 自反传递闭包 关系R的传递闭包记为R*,x, y∈Σ, xR*y 当且仅当 存在n≥0,使得xRny ,其中R0为恒等 布尔矩阵和关系 关系可用集合定义,也可用布尔矩阵表示 xRy 当且仅当M[x,y]=1 定理6.1 M(RT)=M(R)T 定理6.2 M(R1+R2)=M(R1)+M(R2) 定理6.3 M(R1R2)=M(R1)M(R2) 定理6.4 M(R+)=M(R)+ 传递闭包 的Warshall算法 for j:=1 to n do for i:=1 to n do if M[i,j]=1 then for k:=1 to n do if M[j,k]=1 then M[i,k]=1; 关系FIRST和LAST ① A FIRST B A→Bα ② A LAST B A→αB 结论: ① A FIRST+ B A Bα ② A LAST+ B A αB 例6.8 设文法G33[S]: S→(A)| a | b A→B B→S | Scb FIRST FIRST+ 例6.8 设文法G33[S]: S→(A)| a | b A→B B→S | Scb LAST LAST+ 6.5 简单优先分析方法 简单优先关系 ① L±R U→…LR… ② L<R U→…LP… ,P R… ③ L>R U→…WP… , W …L;P R… 简单优先关系的形式化构造 公式6.1 (<) ≡ (±)(FIRST+) 公式6.2 (>) ≡ (LAST+)T(±)(FIRST*) 简单优先文法及其分析方法 定义 6.2 简单优先文法满足 ① 任意两个符号(VN∪VT)至多存在一种简单优先关系。 ② 产生式没有相同的右部。 例6.9G34[S] S→(R)|a|^ R→T T→S,T|S 由S→(R) 有(±R R±) 由T→S,T 有 S±, ,±T : 由S→(R) (R…=(T…=(S…=((… =(a… =(^… 由T→S,T …,T= …,S … = …, (… = …, a… = …, ^… 例6.9G34[S] S→(R)|a|^ R→T T→S,T|S 对符号串((a),a) 检查 简单优先关系的形式化构造 公式6.1 ( ) ≡ (±

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档