欢迎来到天天文库
浏览记录
ID:18539526
大小:59.72 KB
页数:10页
时间:2018-09-19
《《编译原理》实验指导书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《编译原理》课程实验指导书陈志刚编写课程编号320144X1总学时48实验学时10课外学时0中南大学软件学院2012年11月9实验1《词法分析程序设计与实现》实验学时:2每组人数:1实验类型:3(1:基础性2:综合性3:设计性4:研究性)实验要求:1(1:必修2:选修3:其它)实验类别:2(1:基础2:专业基础3:专业4:其它)一、实验目的加深对词法分析器的工作过程的理解;加强对词法分析方法的掌握;能够采用一种编程语言实现简单的词法分析程序;能够使用自己编写的分析程序对简单的程序段进行词法分析。二、实验内容自定义一种程序设计语言,或者选择已有的一种高级语言,编制它的词法分析程序
2、。词法分析程序的实现可以采用任何一种编程语言和编程工具。从输入的源程序中,识别出各个具有独立意义的单词,即关键字、标识符、常数、运算符、界符。并依次输出各个单词的内部编码及单词符号自身值。(遇到错误时可显示“Error”,然后跳过错误部分继续显示)三、实验要求:1.对单词的构词规则有明确的定义;2.编写的分析程序能够正确识别源程序中的单词符号;3.识别出的单词以<种别码,值>的形式保存在符号表中,正确设计和维护符号表;4.对于源程序中的词法错误,能够做出简单的错误处理,给出简单的错误提示,保证顺利完成整个源程序的词法分析;四、实验步骤1.定义目标语言的可用符号表和构词规则;2.
3、依次读入源程序符号,对源程序进行单词切分和识别,直到源程序结束;3.对正确的单词,按照它的种别以<种别码,值>的形式保存在符号表中;4.对不正确的单词,做出错误处理。五、实验报告1.完成本项目实验后,学生应提交实验报告。2.实验报告格式与要求见附件(供参考,可根据课程要求调整)。9实验2《预测分析法设计与实现》实验学时:2每组人数:1实验类型:3(1:基础性2:综合性3:设计性4:研究性)实验要求:2(1:必修2:选修3:其它)实验类别:2(1:基础2:专业基础3:专业4:其它)一、实验目的加深对语法分析器工作过程的理解;加强对预测分析法实现语法分析程序的掌握;能够采用一种编程
4、语言实现简单的语法分析程序;能够使用自己编写的分析程序对简单的程序段进行语法翻译。二、实验内容在实验1的基础上,用预测分析法编制语法分析程序,语法分析程序的实现可以采用任何一种编程语言和工具。三、实验要求:1.对语法规则有明确的定义;2.编写的分析程序能够对实验一的结果进行正确的语法分析;3.对于遇到的语法错误,能够做出简单的错误处理,给出简单的错误提示,保证顺利完成语法分析过程;4.实验报告要求用文法的形式对语法定义做出详细说明,说明语法分析程序的工作过程,说明错误处理的实现。四、实验步骤1.定义目标语言的语法规则;2.求解预测分析方法需要的符号集和分析表;3.依次读入实验一
5、的分析结果,根据预测分析的方法进行语法分析,直到源程序结束;4.对遇到的语法错误做出错误处理。五、实验报告要求详细说明你的程序的设计思路和实现过程。实验报告要求用文法的形式对语法定义做出详细说明,说明语法分析程序的工作过程,说明错误处理的实现。9实验3《算符优先分析法设计与实现》实验学时:2每组人数:1实验类型:3(1:基础性2:综合性3:设计性4:研究性)实验要求:2(1:必修2:选修3:其它)实验类别:2(1:基础2:专业基础3:专业4:其它)一、实验目的加深对语法分析器工作过程的理解;加强对算符优先分析法实现语法分析程序的掌握;能够采用一种编程语言实现简单的语法分析程序;
6、能够使用自己编写的分析程序对简单的程序段进行语法翻译。二、实验内容在实验1的基础上,用算符优先分析法编制语法分析程序,语法分析程序的实现可以采用任何一种编程语言和工具。三、实验要求:1.对语法规则有明确的定义;2.编写的分析程序能够对实验一的结果进行正确的语法分析;3.对于遇到的语法错误,能够做出简单的错误处理,给出简单的错误提示,保证顺利完成语法分析过程;四、实验步骤1.定义目标语言的语法规则;2.求解预测分析方法需要的符号集和分析表;3.依次读入实验一的分析结果,根据预测分析的方法进行语法分析,直到源程序结束;4.对遇到的语法错误做出错误处理。五、实验报告要求详细说明你的程
7、序的设计思路和实现过程。实验报告要求用文法的形式对语法定义做出详细说明,说明语法分析程序的工作过程,说明错误处理的实现。9实验4《递归下降分析法设计与实现》实验学时:2每组人数:1实验类型:3(1:基础性2:综合性3:设计性4:研究性)实验要求:2(1:必修2:选修3:其它)实验类别:2(1:基础2:专业基础3:专业4:其它)一、实验目的根据某一文法编制调试递归下降分析程序,以便对任意输入的符号串进行分析。本次实验的目的主要是加深对递归下降分析法的理解。二、实验内容程序输入/输出示例(以下仅
此文档下载收益归作者所有