ImageVerifierCode 换一换
格式:PPT , 页数:18 ,大小:70KB ,
资源ID:4218929      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-4218929.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(编译原理4.4-递归下降分析程序构造.ppt)为本站会员(hyngb9260)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

编译原理4.4-递归下降分析程序构造.ppt

1、第四章,4.1 语法分析器的功能 4.2 自上而下分析面临的问题 4.3 LL(1)分析法 4.4 递归下降分析程序构造 4.5 预测分析程序 4.6 LL(1)分析中的错误处理,4.4 递归下降分析程序构造,前提: 文法满足LL(1)文法 实现思想: 每个非终结符对应一个递归过程,约定的数据结构和函数,IP: 输入串指示器 SYM: IP当前所指的输入符号 ADVANCE: 使IP指向下一输入符号 getsym , NextCh ERROR: 出错诊察处理程序,p74,文法 (4.2) E TEE +TE|T FTT *FT|F (E) | i,E TE,PROCEDURE E; BEGIN

2、T;E END,T FT,PROCEDURE T; BEGINF;T END,E +TE|,PROCEDURE E; IF SYM=+ THEN BEGINADVANCE;T;E END,T *FT|,PROCEDURE T; IF SYM=* THEN BEGINADVANCE;F;T END,F (E) | i,PROCEDURE F; IF SYM= i THEN ADVANCE ELSEIF SYM=( THENBEGINADVANCE;E;IF SYM=) THEN ADVANCE;ELSE ERRORENDELSE ERROR,基本架构(1) Uu1 | u2 | un,U( )

3、if (sym SELECT(Uu1) ) 处理u1else if (sym SELECT(Uu2) ) 处理u2 else ERROR ,补充,基本架构(2) 对于U的每个右部ui=x1x2xn,处理ui处理x1的程序;处理x2的程序; 处理xn的程序;如果右部为, 则不处理,基本架构(3) 对于右部中的每个符号xi,xiVTif(xi = =sym) ADVANCE; return; else ERRORxiVNxi( ) /直接调用相应的过程,基本架构(4) sx*,while symselect (sx)do x,补充例: 用递归下降分析程序进行句型分析,G: SbAABaA|Bab

4、输入串 baba#,SELECT(SbA) = bSELECT(ABaA)= a SELECT(A)= #SELECT(Bab) = a,G: SbAABaA|Bab 输入串 baba#,S,主程序,program parser begingetsym; S;If sym= #Successelsefail end,SbA,procedure S beginif sym in SELECT(SbA) /b if sym = b getsym; Aelse errorelse error end,ABaA|,procedure A beginif sym in SELECT(ABaA) /aBif sym = agetsym; A;else errorelse if sym in SELECT(A) /#else error end,Bab,procedure B beginif sym in SELECT(Bab) /aif sym = a getsym; if sym = bgetsym; else errorelse errorelse error end,*EBNF和语法图 p75,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报