编译原理 第05章课件.pptVIP

  1. 1、本文档共102页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理 第05章课件

第五章 自顶向下语法分析方法;学习目标 ;学习指南 ;难重点 ;难重点 ;知识结构 ;5.1 确定的自顶向下语法分析思想 5.2 LL(1)文法的判别 5.3 某些非LL(1)文法到LL(1)文法的等价变换 5.4 不确定的自顶向下语法分析思想 5.5 确定的自顶向下语法分析思想;本章内容 ;5.1 确定的自顶向下分析思想;例 5.1 若有文法G1[S]: S → pA |qB  A →cAd|a  B →d B |c 识别输入串w= pccadd是否是G1[S]的句子  试探推导过程:  S? pA ? pcAd ? pccAdd ? pccadd 试探成功。  相应语法树为图5.1。 图 5.1 确定的自顶向下语 法分析树(一);例 5.1 文法有以下两个特点: ;例 5.2? 若有文法G2[S]:   S → Ap |Bq   A →a|cA   B →b|dB   识别输入串w=ccap是否是G2[S]的句子,那么试探推出输入串的推导过程为 :   S ? Ap ? cAp ? ccAp ? ccap   试探推导成功。  ;例5.2 文法的特点是:;FIRST集;例1:设有文法G[S] : S→AB|bC A→ε|b B→ε|aD C→AD|b D→aS|c 解:可产生空串的非终结符:A、B、S FIRST(S)=={b,a,ε} FIRST(A)={ε,b} FIRST(B)={ε,a} FIRST(C)={a,b,c} FIRST(D)={a,c};例 5.3?若有文法G3[S]:   S → aA|d   A →bAS|ε   识别输入串w=abd是否是G3[S]的句子   试探推导出abd的推导过程为:   S ? aA ? abAS ? abS ? abd   试探推导成功。    相应语法树为下图 ;例5.3 文法的特点是:;FOLLOW集;SELECT集;LL(1) 文法的通俗定义;说明;LL(1)文法;本章内容 ;内容;例子分析;FIRST集;求解FIRST集的算法 对每个文法符号X,计算FIRST(X)过程如下: ① 若X∈VT ,则FIRST(X)={X}; ② 若X∈VN ,且有产生式X?a… ,a∈VT,则把a加入到FIRST(X)中; ③ 若X∈VN ,X??也是一条产生式,则把?也加到FIRST(X)中; ④ 若X∈VN ,有产生式X?Y1Y2…Yn ,Y1,…Yi都是非终结符,对于任何j(1≤j≤i-1), FIRST(Yj)都含有ε,则把FIRST(Yj)中的所有非ε元素都加到FIRST(X)中;FIRST(Yi)的元素加入到FIRST(X) 特别地,若FIRST(Yj , j=1,2,…,n)均含有? ,则把? , FIRST(Yj)中的所有非ε元素都加到FRIST(X)中; ⑤ 反复使用①-④,直到FIRST(X)不再增大为止。 ???他求解方法:关系图法、矩阵法。;例1:设有文法G[S] : S→AB|bC A→ε|b B→ε|aD C→AD|b D→aS|c 解:可产生空串的非终结符:A、B、S FIRST(S)={FIRST(A)-{ε}}∪{FIRST(B)-{ε}}∪{ε} ∪{b}={b,a,ε} FIRST(A)={ε} ∪{b}={ε,b} FIRST(B)={ε} ∪{a}={ε,a} FIRST(C)={FIRST(A)-{ε}}∪FIRST(D)={a,b,c} FIRST(D)={a} ∪{c}={a,c};例2:设有文法G[E] : E→TE‘ E→+TE’|ε T→FT T→*FT’|ε F→(E)|id FIRST(F)={(,id} FIRST(T)=FIRST(F)={(, *, id} FIRST(E)=FIRST(T)={(,id} FIRST(E)={+,ε} FIRST(T)={*,ε} FIRST(+)={+}, FIRST(*)={*} FIRST(()={(} FIRST())={)} FIRST(id)={id};例2:设有文法G[S] : S→AB|bC A→ε|b B→ε|aD C→AD|b D→aS|c 解:可产生空串的非终结符:A、B、S FIRST(AB) ={FIRST(A)-{ε}}∪{FIRST(B)-{ε}}∪{ε}={b,a,ε} FIRST(bC)={b} FIRST(ε)={ε} FIRST(AD)={FIRST(A)-{ε}}∪FIRST(D)={b,a,c

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档