- 1、本文档共81页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
句型、句子、语言的定义 句型 有文法G,若S x,且x∈V*,则称x是文法G的句型。 句子 有文法G,若S x,且x∈VT*,则称x是文法G的句子。 例:G: S→0S1, S→01 S ?0S1 ?00S11 ?000S111 上下文无关文法的句型的推导 最左(最右)推导:在推导的任何一步α?β,其中α、β是句型,都是对α中的最左(右)非终结符进行替换 最右推导被称为规范推导。 由规范推导所得的句型称为规范句型 句型的分析 句型分析就是识别一个符号串是否为某文法的句型,是某个推导的构造过程。 在语言的编译实现中,把完成句型分析的程序称为分析程序或识别程序。分析算法又称识别算法。 从左到右的分析算法,即总是从左到右地识别输入符号串,首先识别符号串中的最左符号,进而依次识别右边的一个符号。 语法分析算法分类 分析算法分类: 自上而下分析法(自顶向下):从文法的开始符号出发,反复使用各种产生式,寻找与输入符号匹配的最左推导。 自下而上分析法(自底向上):从输入符号串开始,逐步进行归约(最右推导的逆过程),直至归约到文法的开始符号。 语法分析方法综述: 递归子程序 自顶向下 预测分析(LL(1)分析器) 算符优先 自底向上 LR(0)、SLR(1),LR(1)、LALR(1) 自上而下语法分析的一般过程 自顶向下语法分析要解决的关键问题 假定要被代换的最左非终结符号是B,且有n条规则:B→A1|A2|…|An,那么如何确定用哪个右部去替代B? 例:文法G为:S→xAy | z,A→**|* 输入串?=#x*y# 自上而下的分析过程: (1)S有两个侯选式“xAy”和“z”,侯选式“xAy”与输入串“x*y”相匹配,故推导:S?xAy。 (2)非终极符A也有两个侯选式“**”和“*”,若选第一个侯选式“**”对句型进行推导,则得:S?xAy?x**y,不相匹;推导回溯到句型“xAy”;再用非终极符A的第二个侯选式“*”进行推导,即:S?xAy?x*y。且都是终极符,输入串“x*y”是所给文法的句子。 过程调用示意图描述句型的推导过程 例4.1 文法G41=({P,U} , {a} , {P→aU, U→P|?}, P),L(G41)={an|n≥1} 例4.2 文法G42=({P,B} , {a}, {P→B|a, B→Pa}, P), L(G42)= L(G41) 例4.3 文法G43=({P}, {a}, {P→aP|a}, P), L(G43)= L(G41) 过程调用示意图描述句型的推导过程 例4.1 文法G41=({P,U} , {a} , { P→aU, U→P|? }, P), L(G41)={an|n≥1} 文法G42=({P,B} , {a}, {P→B|a, B→Pa}, P)过程调用图--输入串为#aa# 首先,是文法的左递归问题。 一个文法是含有左递归的,如果存在非终结符P的产生式P ?Pα 含有左递归的文法将使上述的自上而下的分析过程陷入无限循环。即,当试图用P去匹配输入串时,我们会发现,在没有识别任何输入符号的情况下,又得重新要求P去进行新的匹配。因此,使用自上而下分析法必须消除文法的左递归性。 一般地,若文法的产生式为: P→P?1| P?2|……|P?n|?1|?2|……|?m 其中:?j 不以P打头,?i 非空 (1≤j≤m,1≤i≤n); 消除左递归后,为: P→?1P|?2 P|……|?m P P→?1P|?2 P|……|?n P| ? (2)消除隐含的左递归 要求文法中不含回路,即无A?A的推导 ①给文法VN中的符号一个排序:A1, A2, …, An; for (i=1; i=n; i++) { for (j=1; j= i-1; j++) { 把形如Ai→Aj?的规则改成 Ai→?1?|?2?|…|?k? 其中:Aj→?1|?2|…|?k是Aj的所有产生式; }/*替换为直接左递归*/ 消除关于Ai产生式的直接左递归; }; 化简所得到的文法(去掉无用产生式),结束。 例子G46: S→Qc|c
您可能关注的文档
- 房地产开发第5章房地产投资分析基础.ppt
- 来画虫(上半部分).ppt
- 当前世界经济形势.(4).ppt
- 个性化审核报告-第二稿.ppt
- 初级会计学-1总论.ppt
- 西方经济学02(2010)最新课件.ppt
- 嵌入式温湿度控制器的研究与设计3_2.ppt
- 国际贸易实务(第一章).ppt
- 算法分析与设计[6].ppt
- 山东省高考题汇编.ppt
- 人教版英语5年级下册全册教学课件.pptx
- 部编人教版2年级上册语文全册教学课件含单元及专项复习.pptx
- 人教版8年级上册英语全册教学课件(2021年8月修订).pptx
- 教科版(2017版)6年级上册科学全册课件+课时练.pptx
- 人教版PEP版6年级英语下册全册教学课件(2022年12月修订).pptx
- 部编人教版2年级下册语文全册课件(2021年春修订).pptx
- 人教版数学6年级下册全册教学课件(2023年教材).pptx
- 湘少版5年级下册英语全册教学课件(2021年春修订).pptx
- 人教PEP4年级下册英语全册教学课件 [2}.pptx
- 人教版6年级上册英语全册教学课件.pptx
文档评论(0)