欢迎来到天天文库
浏览记录
ID:5267206
大小:269.67 KB
页数:28页
时间:2017-12-07
《《编译原理》实验指导书(程细柱)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、韶关学院《编译原理》实验指导书主编:程细柱信息工程学院计算机科学系2004年2月16日前言《编译原理》课程是计算机本科专业的必选课程。上机实验是该课程的重要环节,一般情况下应开实验数约为12学时;如果要提高实验难度可以增加一个“编译原理课程设计”,约8学时。一个编译程序把源程序翻译成等价的目标程序,一般应做词法分析、语法分析、语义分析、代码生成和代码优化等五个方面的工作,为了使学生对其有较深的理解,必须根据这五个方面设计实验。本指导书正是根据课程的内容,将实验分为前期准备阶段、基本操作阶段和技术提
2、高阶段三个阶段进行:①前期准备阶段的实验主要是为后续实验做好准备,应围绕编译原理课程进行设计,如:学生可根据教科书的内容,设计一个源程序的输入和扫描程序,并完成相应的设计报告;②基本操作阶段的实验是围绕着编译原理的五个方面的工作来进行,其内容主要是词法分析、语法分析、语义分析、代码生成和代码优化等,如:简单的词法分析程序、LL(1)分析法算法、语义分析程序、中间代码和目标代码生成算法的实验,这些实验基本上包括了以上知识要点,学生可结合书本上有关的知识来完成;③技术提高阶段的实验是综合性课程设计实验
3、,根据编译原理编制应用程序,不仅要求把书本上的内容掌握好,同时还需要自学一些相关的知识。1目录实验一:源程序的输入和扫描(2学时)……………………………………3实验二:词法分析算法(2学时)……………………………………………5实验三:LL(1)分析算法(2学时)…………………………………………8实验四:语义分析算法(2学时)……………………………………………11实验五:中间代码生成算法(2学时)………………………………………14实验六:目标代码生成算法(2学时)………………………………………17实
4、验七:“编译原理”课程设计(8学时)……………………………………22实验报告示例:有限自动机的运行实验……………………………………………252实验一源程序的输入和扫描(2学时)一、实验目的熟悉TC等语言开发工具,了解被处理语言的语法特点,为后续实验做准备。二、实验内容编制一个源程序的输入过程,从键盘、文件或文本框输入若干行语句,依次存入输入缓冲区(字符型数据);并编制一个扫描子程序,该子程序中每次调用能依次从存放源程序的输入缓冲区中读出一个有效字符。三、实验仪器、设备及材料1、一人一台计算机,独立
5、完成实验。2、计算机硬件的最低配置为:PentiumⅢCPU、128MRAM、CDROM、硬盘、软驱、彩显。3、计算机软件的基本要求:软件开发工具,如TC、VC++等。四、实验原理该实验属于编译原理前期准备阶段的实验,主要是为后续实验做好准备。因为词法分析第一歩就是源程序的输入和扫描,且经常被调用,故需将其设计为一个单独的程序模块。五、实验步骤(一)准备:确定开发工具,如TC、VC、VC++等;花一天时间熟悉开发工具。花二天时间确定被处理的语言的语法特点(初步确定,也可使用现成语言如Pascal、
6、C等)。写好实验报告,编好程序。(二)上机:安装所需的开发工具,输入或拷贝程序,调试。3(三)程序要求:1.主程序的部分伪代码:如源程序为C语言。输入如下一从输入设备接收所有输入到缓冲区段:While读入一字符成功main()显示该字符{endwhileinta,b,c;a=10;b=20;2.读入一字符的部分伪代码:c=a+b;if缓冲区非空then}读出该字符要求输出与输入相同。改变缓冲区指针要点:读字符的子程序作为单独一返回该字符个过程(函数),每调用它一次只返回else缓冲区里的一个字符,
7、主程序连续调用返回结束标记它就得到完整的输出。(见右图)endif六、实验报告要求1.写出编程思路、源代码;2.写出上机调试时发现的问题,以及解决的过程;3.写出你所使用的测试数据;4.谈谈你的体会。七、注意事项1.该实验课约准备约2小时以上;上机一次2小时;.完成实验报告2小时上交;2.需提交程序源文件。八、思考题1.程序非常简单,但要明白该程序的作用,为什么要设计成独立的子函数?要将它和在以后的实验中进行比较,可得出这样处理的目的。2.通过练习,掌握字符处理的方法。4实验二词法分析(2学时)一
8、、实验目的熟悉正规文法、正规式和有穷自动机,了解词法分析的主要任务,掌握词法分析是如何根据正规文法规则逐一分析词法得到属性字的,即掌握了词法分析过程。二、实验内容编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的内部编码及单词符号自身值。(遇到错误时可显示“Error”,然后跳过错误部分继续显示)。三、实验仪器、设备及材料1、一人一台计算机,独立完成实验。2、计算机硬件的最低配置为:Pentiu
此文档下载收益归作者所有