- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录
前 言2
用C语言编写源程序建立LR(1)分析器3
一,设计目的,要求,算法与设计思想3
1.设计内容3
2.设计要求3
3.设计的基本原理3
1.CLOSURE(I)的构造3
2.GO(I,X)的构造3
3.FIRST集合的构造4
4.LR(1)分析表的构造4
二,LR (1)分析器4
1.LR(1)分析器的实现图:4
2.LR分析器与逻辑结构及工作过程5
三,总体方案设计5
1. 各模块设计6
四,程序测试8
1.教科书的第142页文法的LR1分析器的构造和语法分析8
2.表达式文法的LR1分析器的构造和语法分析器9
五,源程序10
六,总结19
七,参考文献19
编译原理学年论文
前 言
《编译原理》是计算机专业的一门重要的专业课程,其中包含大量软件设计
细想。通过课程设计,实现一些重要的算法,或设计一个完整的编译程序模型,
能够进一步加深理解和掌握所学知识,对提高自己的软件设计水平具有十分重要
的意义。
我选的是老师给的题,并予以扩充。即对任意给定的问法G构造LR(1)项目
集规范族,其中要实现CLOSURE(1),GO(I,X),FIRST集合符。在此基础上,构
造了LR(1)分析表。然后对输入的句子进行语法分析,给出接受或出错报告。程
序采用文件输入输出方式。其中包括两个输入文件:文法grammar.txt,以及输
入串 input.txt;两个输出文件:项目集 items.txt 和文法的LR(1)分析表
action_table.txt。由于语法分析的结果只给出接受或错误报告,比较简单。所
以直接在屏幕上输出,也便于用户查看。
在具体编写程序中,对文法操作的各个功能模块独立成为一个子程序,而对
具体输入穿得分析则放在main()函数中进行。各个变量奇函数的意义和用法我
将在论述程序设计的通体方案中向西给出。
程序的通体算法细想来自《编译原理》课程。具体实现有我独立完成。程序
用C/C++语言编写。在Microsoft Visual C++2005环境下调使通过。
2
编译原理学年论文
用C语言编写源程序建立LR(1)分析器
一,设计目的,要求,算法与设计思想
1.设计内容
对任意给定的上下文无关文法G,构造其LR(1)项目集族,并且在此基础上
进一步构造其LR(1)分析表。然后分析输入的句子。
2.设计要求
对输入 的文法 G (要求是上下文无关文法 ),在程序 终实现
CLOSURE(1),GO(I,X),FRIST等的构造,并利用这些功能函数构造出LR(1)项目
集族。并且输出结果。在此基础上构造G 的LR(1)分析表(这个表也输出给用户),
并对输入的句子进行语法分析表,给出分析结果。
3.设计的基本原理
1.CLOSURE(I)的构造
CLOSURE(I)表示和I中项目可以识别同样活前缀的所有项目的集合。它可以
有以下方法得到:
(1)I中的所有项目都属于CLOSURE(I);
→a.Bβ,a] →
(2)若项目[A 属于CLOSURE(I),B ξ是一个产生式,那么,对于
β β→
FIRST a中的每一个中介符b,如果[ .ξ,b]原来不在CLOSURE(I)中,则把它
加进去;
(3)重复执行步骤 (2),直到CLOSURE(I)不再增大为止。
2.GO(I,X)的构造
G
您可能关注的文档
- CV-出国留学机械工程博士申请简历 签证简历.doc
- CV的介绍写法范例.doc
- Cv值与Kv值的定义及计算方法.pdf
- CX-37-2011 工艺安全信息管理程序.doc
- CX-XXX 005-10 设计转换总结报告.doc
- CY_150喷雾_填料式除氧器.pdf
- CZ2209--92改进型50km钢轨9号单开道岔总布置图(中铁轨道系统公司2009).pdf
- C程序:给出年、月、日,计算该日是该年的第几天。.doc
- C均值算法的Matlab实现.doc
- C类安全员考试真题(第二套).doc
- 2024-2025学年小学音乐五年级上册人音版(主编:吴斌)教学设计合集.docx
- 《春节地域习俗》课件.ppt
- 2024-2025学年小学音乐五年级下册苏少版(2024)教学设计合集.docx
- 2024-2025学年小学音乐一年级上册(2024)苏少版(2024)教学设计合集.docx
- 2024-2025学年小学音乐一年级上册花城版(2024)教学设计合集.docx
- 2024-2025学年小学音乐一年级上册湘艺版(2024)教学设计合集.docx
- 《春节旅游保险攻略》课件.ppt
- 2024-2025学年小学音乐一年级上册人音版(2024)教学设计合集.docx
- 2024-2025学年小学音乐一年级下册接力版(2024)教学设计合集.docx
- 《春节畅想曲》课件.ppt
最近下载
- 烽火网管ANM2000地操作和5516下GPON型ONU业务开通介绍.docx VIP
- PON组网及原理06-AN5516-01 GPON开通配置方法.ppt VIP
- AN5516-01-GPON开通配置方法.ppt VIP
- 烽火AN5516-01 GPON开通流程.ppt VIP
- 高中数学竞赛(强基计划)历年真题练习 9 排列组合二项式定理与概率统计综合 (学生版+解析版).pdf VIP
- 中兴OLT链路聚合配置.ppt VIP
- 2023核电厂核安全文化同行评估导则.doc
- OLT设备测试1.doc VIP
- 高中数学竞赛(强基计划)历年真题练习 4 向量 (学生版+解析版).pdf VIP
- 【高中数学竞赛真题•强基计划真题考前适应性训练】 专题06 不等式 真题专项训练(全国竞赛+强基计划专用)解析版.docx VIP
文档评论(0)