- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
语法分析 自上而下分析4」语法分析——自上而下分析 内容 语法分析
的任务与分类自上而下分析面临的问题递归下降分析程序构造LL(1)分析法 LL(1)分析法
句型,句子,句型,句子,语言的定义句型句子*X,有文法G则称X是文法G有文 法G,若Sx,且xWVT*,则称x是文法G的句子.的句子.*x,有文法G则称x是文法G 有文法G,若S x,且xWV*,则称x是文法G的句型 句型. 例:G:S—OS1,StO1 S-OS1, S 0S1 00S11 000S111上下文无关文法的句型的推导上下文无关文法的句型的推导的句型的最左(最 右)推导:最左(最右)推导:在推导的任何一步叩,其屮(X,卩是句型,都是对(X屮其屮(X 是句型,都是对a的最左(的最左(右)非终结符进行替换最右推导被称为规范推导. 最右推导被称为规范推导.由规范推导所得的旬型称为规范句型
句型的分析 句型分析就是识别一个符号串是否为某文法 的句型,是某个推导的构 造过程.的句型,是某个推导的构造过程.在语言的编译实现屮,在语言的编译实现 中,把完成句型分析的程 序称为分析程序或识别程序?分析算法乂称 识别算法.从 左到右的分析算法,即总是从左到右地识别输入符号串,别输入符号串,首先识别符 号串中的最左符 进而依次识别右边的一个符号.号,进而依次识别右边的一个符 号.
语法分析的任务:L(对任一给定w e VT*,判断w e L(G)?语法分析器:按照 产生式规则,做识别w语法分析器:按照产生式规则,做识别w的工作源程序单 词符号词法分析器取下一个单词符号语法分析器语法分析编译 程序后续部分符号表语法分析器在编译程序中的地位
语法分析算法分类语法分析算法分类分析算法分类:分析算法分类:自上而下 分析法(口顶向下):自上而下分析法(自顶向下)从文法的开始符号出发,反复使用 各种产生从文法的开始符号出发,寻找与输入符号匹配的最左推导.最左推导式, 寻找与输入符号匹配的最左推导.自下而上分析法(自底向上):自下而上分析法(自 底向上)从输入符号串开始,逐步进行归约(最右推 从输入符号串开始,逐步进行归 约(最右推 导的逆过程),直至归约到文法的开始符号.),直至归约到文法的开始符号 导的逆过程),直至归约到文法的开始符号.
语法分析方法综述:语法分析方法综述:递归子程序自顶向下预测分析(LL(分析 器)预测分析(LL(1)分析器)(LL算符优先自底向上
LR(O),SLR( 1 ),LR( 1 ),LALR( LR(O),SLR( 1 ),LR(1 ),LALR( 1)
自上而下语法分析的一般过程 从文法的开始符号出发,反复使用齐种产生式,从 文法的开始符号岀发,反复使用各种产生式,寻找与输入符号匹配的最左推导.最左 推导与输入符号匹配的最左推导?如果能够推导出,则该输入串是给定文法的句了; 如果不能推导出,则该输入串不是给定文法的句子.主旨:从文法开始符号出发,自 上而下的为输主旨:从文法开始符号出发,自上而下的为输入串建立一?棵语法树. 入串建立一棵语法树.
11顶向下语法分析要解决的关键问题 假定耍被代换的最左非终结符号是B且有n 假定要被代换的最左非终结符号是B,且有n条规则:条规则:B^Al|A2|...|An,那么 如何确定用|A哪个右部去替代B哪个右部去替代B?例1:文法G(S):S-pA文法 G(S): G(S) S-qB A-cAd A^a 输入串 W=pccadd
SpA pcAd pccAdd pccadd 相应的语法树:相应的语法树:S P A P A c A d S P S A P S A S—pA Sf qB A—cAd A—a W=pccadd c A d c A d c A d c Ada
文法G(S):S—pA文法G(S): G(S) A—cAd该文法的特点:该文法的特点:S—qB A-a (1)每个产生式的右部都由终结符号开始;每个产生式的右部都由终结符号
开始;终结符号开始如果两个产生式有和同的左部,(2)如果两个产生式有和同的 左部,则它们 的右部由不同的终结符开始.不同的终结符开始 的右部由不同的终结 符开始.对于这样的文法,对于这样的文法,其推导过程町以根据当前的输入符号 决定选择哪个产生式往下推导,因此,输入符号决定选择哪个产生式往下推导,因此, 分析过程是唯一确定唯一确定的分析过程是唯一确定的.
文法G:文法G: S—gt; cAd A 一gt; ab A 一gt; a 输入串w 输入串w:c
ad S IP cAad 分析过程:分析过程:)报告失败,撤销A 43)IP—gt;
#39;a#39;A的了报告失败,撤销IP d; d; 2)a=c A输入串;l)wA;输入串;
回到A;树,回到——输入串扩
原创力文档


文档评论(0)