- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理课程实验汇报示例
1
完成日期:2007-6-20
指导老师:蒋宗礼张悦
编译原理实验报告 张悦
2
一词法的正规式描述
标识符:字母|(字母|数字字符)*(ε|_|.) (字母|数字字符)*
十 进 制 数 : (0|(1|2|3|4|5|6|7|8|9) (0|1|2|3|4|5|6|7|8|9)*)( ε |.)(0|1|2|3|4|5|6|7|8|9)
五.系统实现
(一)词法分析器的实现
四.系统设计
完成整个系统,实现本个实验的要求,需要两个比较大的模块:词法分析器 和语法分析器。
词法分析器的功能是将输入的程序串分解成一个一个独立的单词,并且记录 下每个单词的类型以及数值。这里词法分析器的实现有两种方法:调用一次词法 分析器,返回一个词的类型以及数值,以此类推;还有一种方法是条用一次词法 分析器将程序串的所有单词都分解出来并保存到一个地方(比如线形表)以便将 来使用。我采用的是前者,因为这样只需要对整??程序访问一遍
语法分析器的功能是将已经分解好的单词按照一定的规范(产生式)组合起 来,由此来确定输入程序的意思。我的设计是“语法分析器调用词法分析器”, 当语法分析其分析进行不下去的时候调用词法分析器获取一个单词,继续进行分 析。而语义功能是镶嵌在语法分析其当中的,当语法分析器分析出用什么产生式 的时候作相应的语义处理。
3. 编写测试程序,反复调用函数scan( ),输出单词种别和属性。
4. 改写文法,构造语法分析程序,要求按照最左派生的顺序输出派生的产 生式序列;
5. 改写语法分析程序,构造三地址代码生成程序。
6. 处理的源程序存放在文件中,它可以包含多个语句;
从键盘读入数据,分析出一个单词。
返回单词种别(用整数表示), 返回单词属性(不同的属性可以放在不同的全局变量中)。
1)
2)
3)
三. 实验要求
1. 编制正规式以及正规文法,画出状态图;
2. 根据状态图,设计词法分析函数int scan( ),完成以下功能:
二. 实验内容
1.编制一个能够分析三种整数、标识符、主要运算符和主要关键字的词法 分析程序。
2.用二维预约分析表,编制一个能够进行语法分析并生成派生的产生式序 列的编译程序。
3.用递归子程序法,编制一个能够进行语法分析并生成三地址代码的微型 编译程序。
一. 实验目的
基本掌握计算机语言的词法分析程序的开发方法。以及掌握计算机语言的语 法分析程序设计与属性文法应用的实现方法。锻炼自己的编程能力和逻辑思维能 力,体会计算机编译器的奥妙之处 张悦
3
三、状态图:
-a|b|c|d|e|f|g|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|
R|S|T|U|V|W|X|Y|Z
数字字符-0|1|2|3|4|5|6|7|8|9
temp- (字母|数字字符)temp|ε
temp2- (ε|_|.)
temp3- (ε|.)
temp4- (0|1|2|3|4|5|6|7)temp4|ε
temp5- (0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f) temp5|ε
将状态合起来,得:
(0)-1~9(1)|0(4)|字母(12)|运算符和分隔符(17) (1)-0~9(1)|. (2)
(2)-0~9(3) (3)-0~9(3)
(4)-.(2)|1~7(5)|0(13)|x(8)|X(8) (5)-0~7(5)|.(6)
(6)-0~7(7) (7)-0~7(7)
(8)-1~9(9)|a~f(9)|0(14) (9)-0~9(9)|a~f(9)|.(10) (10)-0~9(11)|a~f(11) (11)-0~9(11)|a~f(11)
(12)-0~9(12)|a~z(12)|A~Z(12)|.(15)|_(15) (13)-.(6)
(14)-.(10)
(15)-0~9(16)|a~z(16)|A~Z(16) (16)-0~9(16)|a~z(16)|A~Z(16)
母
字
二、改变后的正规文法
标识符- 字母temp temp2temp
十进制整数-数字字符temp3数字字符
八进制整数- 0 temp4temp3 temp4
十六进制整数- 0xtemp5temp3 temp5
运算符和分隔符-+| - |* |/ || |= |( | ) |;
关键字-if| then| else |while |do
(0|1|2|3|4|5|6|7|8|9)*
八进制数:0(0|(1|2|3|4|5|6|7) (0|1|2|3|4|5|6|7)*) (ε|.)(0|1|2|3|4|5|6|7) (0|1|2
您可能关注的文档
- 统计学主要概念和思考题.doc
- 统计学习题集第5章相关与回归分析.doc
- 统计学假设检验测试卷.doc
- 统计学全程试卷解析.doc
- 统计学全复习样本题.doc
- 统计学原理形成性考核册作业三_四答案.doc
- 统计学原理形成性考核册解析3.doc
- 统计学原理和应用试题和答案.doc
- 统计学原理计算题和答案.doc
- 统计学原理部分历年度试题分类汇总(北京电大).doc
- 全文可编辑worldreportmarket-AI+汽车行业市场前景及投资研究报告:智能化,Robotaxi商业化落地拐点.ppt
- 全文可编辑worldreportmarket-2025年中国中小企业出海分析报告.ppt
- 全文可编辑worldreportmarket-Brand KPIs for bottled water: GLACÉAU Smartwater in the United States-英文培训课件2025.5.ppt
- 2025年中国积木人行业趋势分析报告.pdf
- 全文可编辑worldreportmarket-Brand KPIs for bottled water: Epura in Mexico-英文培训课件2025.5.ppt
- 全文可编辑worldreportmarket-2025年房地产行业投资策略分析报告:“好房子”品质代差,房地产增量需求.ppt
- 全文可编辑worldreportmarket-2025年新材料行业人才供需分析报告.ppt
- 博雅互动-市场前景及投资研究报告-香港市场数字货币投资,Web3领域领头公司.pdf
- 非银金融行业市场前景及投资研究报告:非车险“报行合一”,行业健康发展.pdf
- 全文可编辑worldreportmarket-2025年出海短剧营销趋势洞察分析报告.ppt
文档评论(0)