- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[计算机软件及应用]自下而上语法分析
自下而上语法分析 掌握自底相上分析的基本思想,基本概念 掌握算符优先关系的判定,求FIRSTVT集,LASTVT集,构造算符优先关系表,能运用算符优先分析方法进行表达式分析 掌握最左素短语、句柄的定义与判定 理解规范规约与算符优先归约的区别 LR(0)和SLR文法的理解 自下而上的语法分析 实现思想 从输入符号串开始,从左到右进行扫描,将输入符号逐个移入一个栈中,边移入边分析,一旦栈顶符号串形成某个产生式的右部时,就用该产生式的左部非终结符代替,称为归约。重复这一过程,直到归约到栈中只剩下文法的开始符号时,则分析成功, 称为“移进-归约”方法。 从语法树的角度看:从语法树的树叶开始,逐步向上归约构造分析树,直到形成根结。是推导的逆过程。 核心 寻找可归约串(这是关键)进行规约。用不同的方法寻找可归约串,就可获得不同的分析方法。 最左推导(Left-most Derive) 每次推导都替换当前句型的最左边的非终结符。 ——与最右归约对应 最右推导(Right-most Derive) 每次推导都替换当前句型的最右边的非终结符。 ——与最左归约(规范归约)对应,得规范句型 语法分析树的生成演示 a b b c d e 这种分析过程具有如下特点: 从输入串的开始依次读入单词(移进栈中) 。 一旦发现可归约串(某个产生式的右端)就立即归约。 归约就是将栈顶的一串符号用文法产生式的左部代替,归约可能重复多次,然后继续移进。 若最终能归约成文法的开始符号,则分析成功。 关键是如何判断可归约串? 规范归约概念 有文法G,开始符号为S, 如果有S=xβy,则xβy是文法G的句型,x,y是任意的符号串 如果有S=xAy, 且有A=β,则β是句型xβy相对于非终结符A的短语 如果有S=xAy, 且有A-β,则β是句型xβy相对于A-β的直接短语 位于一个句型最左边的直接短语称为句柄。 例子 下面的例子说明作为短语的两个条件缺一不可。 [例]考虑表达式文法: E ? T|E+T T ?F|T*F F ?i | (E) 对于句型i*i+i 推导 E ? E+T ? E+F ? E+i ? T+i ? T*F+T ? T*i+i ? F*i+i ? i*i+i 尽管有E ?+i+i 但是, i+i 并不是该句型的一个短语,因为不存在从E(文法开始符)到i*E的推导。 句型的短语和句柄举例 文法:S→ (T)|ε T→S|T,S|a 短语: 句型((a),S) S =* (T,S) T =+ (a) 句型((T,S),S) S =* ((T),S) T =+ T,S 句型(a,(T),(T,S))直接短语以及句柄: S =* (T,(T),(T,S)) T = a S =* (a,S,(T,S)) S =(T) S =* (a,(T),(T)) T =T,S 短语与语法树的关系 短语:语法树子树的叶子结点组成的符号串。 直接短语:语法树简单子树(只有父子两代)的叶子结点组成的符号串。 句柄:语法树最左边简单子树的叶子结点组成的符号串。 短语与语法树关系的例子 句型(a,(T),(T,S))的语法树: 用句柄对句子abbcde进行归约 用句柄对句子进行归约的过程与用移进-归约过程是一致的,使用归约的产生式及其顺序是一致的。 规范归约的定义 假定α是文法G的一个句子,如果序列: αn, αn-1, ……, α0 (=S)满足如下条件,则序列 αn, αn-1, ……, α0是一个规范归约: (1) αn =α 是给定的句子 (2) α0 =S 是文法的开始符号 (3) 对任何i, 0i?n,αi-1是从αi经把句柄替换为相应文法产生式的左部符号而得到的。 规范归约是最右推导的逆过程,规范归约又称为最左归约。 最右推导又称规范推导,由规范推导所得到的句型称规范句型,规范推导的逆过程是规范归约。 使用修剪语法树的方法来进行归约: 分析器的四种动作 移进:将下一输入符号移入栈 归约:当栈顶出现句柄,用产生式左侧的非终结符替换栈顶的句柄 接受:分析成功,是归约的一种特殊情况 出错:栈顶的内容与输入符号相悖,进行出错处理 分析成功的条件:栈顶为文法符号,输入串为空。注意,该过程并未涉及如何在栈里找可归约串。实际上,不同的找可归约串的方法,构成了不同的分析算法。 “移进-归约”分析法用栈实现的特点: 可归约串必定位于栈顶,即可归约串之后就是剩余的输入串。 栈内符号串与剩余输入串正好构成一个句型。 动作 栈 输入缓
您可能关注的文档
- [计算机软件及应用]第7章_建筑电气平面图的绘制.doc
- [计算机软件及应用]第一章 计算机基础知识.ppt
- [计算机软件及应用]第七章 类与对象.ppt
- [计算机软件及应用]第七章-安全套接层协议.ppt
- [计算机软件及应用]第七章涉外安全检查_民航安全检查.ppt
- [计算机软件及应用]第三章 Java语言基础.ppt
- [计算机软件及应用]第三章 文本编辑器.ppt
- [计算机软件及应用]第一章汽车使用性能1-1动力性.ppt
- [计算机软件及应用]第三章数据结构.ppt
- [计算机软件及应用]第九章 CIMS1.ppt
- 2025年市国资委党委开展深入贯彻中央八项规定精神学习教育工作方案与开展学习中央八项规定主题教育工作方案(2篇文).docx
- 在2025年市商务局党组研究部署深入贯彻中央八项规定精神学习教育专题会上的讲话稿、教育动员部署会议上的讲话提纲【2篇文】.docx
- 开展2025年学习八项规定主题教育工作方案与领导在局机关深入贯彻八项规定精神学习教育部署会上的讲话稿(两篇文).docx
- 2025年深入贯彻中央八项规定精神学习教育实施方案与全面落实中央八项规定精神情况总结(2篇文).docx
- 2025年落实中央八项规定精神情况总结稿与领导在深入贯彻中央八项规定精神学习教育工作会议的主持讲话稿(2篇文).docx
- 2025年组织部长在八项规定学习教育工作专班座谈会的讲话稿与开展学习中央八项规定主题教育工作方案(两篇文).docx
- 学习2025年深入贯彻中央八项规定精神知识测试题135题【附答案】与全面深入贯彻中央八项规定精神学习教育实施方案.docx
- 2025年县委书记在中央八项规定精神学习教育动员会上的讲话稿遵守党的政治纪律和落实中央八项规定精神情况个人对照检查材料(2篇文).docx
- 2025年在深入贯彻中央八项规定精神学习教育动员部署会上的讲话稿与在市委党的建设工作领导小组会议暨部署深入贯彻中央八项规定精神学习教育专题会讲话稿(两篇文).docx
- 2025年市工业园区党工委开展深入贯彻中央八项规定精神学习教育工作方案与深入贯彻中央八项规定精神学习教育动员部署会讲话提纲【2篇文】.docx
最近下载
- 聚醚醚酮行业发展趋势与市场前景深度解析.docx
- Reading explorer-F级教学精品课件U2B.pptx VIP
- 中考数学复习考点分类专练:动点综合问题(原卷版+解析).pdf VIP
- 服装招商加盟连锁店开店投资合作推广项目流程咨询PPT模板.pptx VIP
- 12刀位盘型伺服刀塔的的设计(含全套CAD图纸).doc
- 0-12月婴儿生活照料与指导教案教学实施报告.docx
- 康力电梯D10D110电气原理图纸KLA-MCU-201.pdf
- 1.入团考试100题题库含答案(完整版).pdf
- 英语学习国家地理读物Reading Explorer课后练习册F级F-2.pdf
- IP地址与子网划分.ppt VIP
文档评论(0)