- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理第五章课件——张淑艳
编译原理 语法分析——自下而上分析 第五章 语法分析——自下而上分析 自上而下分析法(Top-down) 自下而上分析法(Bottom-up) 语法分析的方法: 自下而上分析法(Bottom-up) 基本思想:从输入串开始,逐步进行“归约”,直到文法的开始符号。即从树末端开始,构造语法树。所谓归约,是指根据文法的产生式规则,把产生式的右部替换成左部符号。 G(E): E ? i| E+E | E-E | E*E | E/E | (E) i*i+i E*i+i E*E+i E+i E+E E 5.1.1 归约 采用“移进-归约”思想进行自下而上分析。 基本思想:用一个寄存符号的先进后出栈,把输入符号一个一个地移进到栈里,当栈顶形成某个产生式的候选式时,即把栈顶的这一部分替换成(归约为)该产生式的左部符号。 例:设文法G(S): (1) S ? aAcBe (2) A ? b (3) A ? Ab (4) B ? d 试对abbcde进行“移进-归约”分析。 5.1.2 规范归约 定义:令G是一个文法,S是文法的开始符号,假定???是文法G的一个句型,如果有 且 考虑文法G(E): E ? T | E+T T ? F | T*F F ? (E) | i 和句型i1*i2+i3: E ? E+T ? E+F ? E+i3 ? T+i3 ? T*F+i3 ? T*i2+i3 ? F*i2+i3 ? i1*i2+i3 在一个句型对应的语法树中,以某非终结符为根的两代以上的子树的所有末端结点从左到右排列就是相对于该非终结符的一个短语,如果子树只有两代,则该短语就是直接短语。最左直接短语称为句柄。 可用句柄来对句子 abbcde 进行归约 句型 归约规则 abbcde (2) A ? b aAbcde (3) A ? Ab aAcde (4) B ? d aAcBe (1) S ? aAcBe S 定义:假定?是文法G的一个句子,我们称序列 ?n, ?n-1,? ,?0 是?的一个规范归约,如果此序列满足: 1 ?n= ? 2 ?0为文法的开始符号,即?0=S 3 对任何i,0 i ? n, ?i-1是从?i经把句柄替换成为相应产生式左部符号而得到的。 5.1.3 符号栈的使用和分析树的表示 栈是语法分析的一种基本数据结构。’#’作为栈底符号 考虑文法G(E): E ? T | E+T T ? F | T*F F ? (E) | i 输入串为i1*i2+i3 ,分析步骤为: 步骤 符号栈 输入串 动作 0 # i1*i2+i3# 预备 1 #i1 *i2+i3# 进 2 #F *i2+i3# 归,用F→i 3 #T *i2+i3# 归,用T→F 4 #T* i2+i3# 进 步骤 符号栈 输入串 动作 4 #T* i2+i3# 进 5 #T*i2 +i3# 进 6 #T*F +i3# 归,用F→i 7 #T +i3# 归,用T→T*F 8 #E +i3# 归,用E→T 9 #E+ i3# 进 步骤 符号栈 输入串 动作 9 #E+ i3# 进 10 #E+i3 # 进 11 #E+F # 归,用F→i 12 #E+T # 归,用T→F 13 #E # 归,用E→E+T 14 #E # 接受 规范归约:例及练习 文法G[S]: S ? (L) | aS | a L ? L , S | S 写出句子 (a,(a)) 的规范归约过程; 指出每次归约用的句柄。 5.2 算符优先分析 四则运算的优先规则: 先乘除后加减,同级从左到右 考虑二义文法文法G(E): G(E): E ? i| E+E|E-E|E*E|E/E|(E) 它的句子有几种不同的规范规约。 归约即计算表达式的值。归约顺序不同,则计算的顺序也不同,结果也不一样。 如果规定算符的优先次序,并按这种规定进行归约,则归约过程是唯一的。 例如:句子i+i-i*(i+i) 句子i+i-i*(i+i)的归约过程是: (1) i+i-i*(i+i) (2) E+i-i*(i+i) (
您可能关注的文档
- 动力中心2011年综合部工作总结.doc
- 发点关于大学英语四级考试听力部分的应试技巧.doc
- 北京101中2010年初三4月份化学试题及答案.doc
- 在质量管理中管理者要重视管理工作的质量.doc
- 基本函数求导公式及运算法则.ppt
- 多项式乘以多项式0.doc
- 复数与框图测试题.doc
- 国际业务部工作流程应用表单.doc
- 天鹅湖监理规划1.doc
- 堆载预压方案.doc
- DB44_T+2756-2025碳达峰碳中和培训管理规范.docx
- DB44_T+2765-2025红树林主要病虫害综合防控技术规程.docx
- DB44_T+2757-2025五指毛桃林下栽培技术规程.docx
- DB44_T+2760-2025鳄蜥饲养技术规程.docx
- DB44_T+2754-2025中医医院老年病科病房适老化服务规范.docx
- 中西医临床患者报告结局测量工具选择系统的工作流规范.docx
- DB44_T+2767-2025河口海湾总氮、总磷水质评价指南.docx
- 中医药科技成果转化评价技术规范.docx
- DB44_T+2750-2025农村供水工程数字化建设技术导则.docx
- DB44_T+2769-2025金属矿山生态修复技术规范.docx
最近下载
- 六年级数学成绩分析.docx VIP
- 山东省临沂市2024-2025学年高二上学期期末化学试卷(含答案).pdf VIP
- 2025年检测加固题库(183道).pdf VIP
- 新22J01 工程做法建筑工程图集.docx VIP
- 海尔星级服务手册.docx VIP
- 电镀生产线人员培训.docx VIP
- 安徽大学《自动控制原理》2024 - 2025 学年第一学期期末试卷.pdf VIP
- T/CASEI62001—2019 起重机械 安全状况评估.pdf VIP
- 苏州科技大学天平学院《混凝土结构设计原理道桥》2021-2022学年第一学期期末试卷.doc VIP
- 化验员招聘笔试题及解答(某大型国企).docx VIP
原创力文档


文档评论(0)