欢迎来到天天文库
浏览记录
ID:45748753
大小:133.13 KB
页数:86页
时间:2019-11-17
《【精品】LGY编译原理课程实验指导书》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、编译原理课程实验指导书适用专业:计算机类相关专业赖国勇'枝花学院计算机学院2010年11月目录编译原理课程实验指导书1冃录2一、课程实验基本目的与可能收获3二、课程实验基本要求4三、课程实验项目51、项冃一:词法分析实验(4学时)52、项目二:LL(1)语法分析实验(4学时)6四、课程实验过程为具体要求11五、课程实验交付成果说明12六、考核方式及成绩评定方法14七、主耍参考文献与网址15附录A课程实验题fl参考源程序17A.1说明语句的词法分析器参考源程序17A.2基于预测分析方法的表达式语法分析器参考源程序30附录B词法分析器口动生成工具简介44B.lFLE
2、X概述44B.2模式简介44B.3LEX源文件格式44B.4LEX的工作原理46B.5二义性问题的解决46B.6常用全局变量和宏46B.7条件模式47B.8示例48附录C语法分析器自动生成工具简介50C.lYACC概述50C.2YACC的源文件格式50C.3语义定义52C.4其它52C.5示例52附录D词法分析器FLEX55D.lPL/0语言55D.2flex词法生成器55附录EYacc与Lex快速入门62E.lLex与Yacc介绍62E.2Lex变量64附录F软件开发文档指南67一、课程实验基本目的与可能收获1、学习《编译原理》要求理论与实践相结合,本门实验课
3、程是对《编译原理》课堂教学的一个重要补充,与理论学习起着相辅相成的作用,是实施《编译原理》教学的一个重要组成部分。通过本实验课的实践学习,加深学生对语言编译器构造的一般原理的理解,掌握以词法分析程序和语法分析程序为核心的简单编译器的基本设计方法和实现技术,进一步提高学生综合运用所学知识的能力和实际动手编程能力,为日后从事软件开发工作打下坚实基础。2、通过课程实验的实践及其前后的准备与总结,复习、领会、巩固和运用课堂上所学的知识和方法,提升分析问题,解决问题的实际能力。3、使学生通过开发实践,了解项目管理、团队合作、文档编写、口头与书而表达的重要性。使每个学生了解
4、软件工具与环境对于项口开发的重要性,并且重点深入掌握好一、两种较新或较流行的软件工具或计算机应用技术、技能。4、通过“稍大的”富有挑战性的软件实验项目开发实践,提高学生的口学能力、书而与口头表达能力、创造能力和与团队其他成员交往和协作开发软件的能力,提高学生今后参与开发稍人规模实际软件项目和探索未知领域的能力和自信心。二、课程实验基本要求1、深入而直观地理解编译器使用的各类算法,其中常见的重要算法主要包抓(1)词法分析算法(2)LL(1)语法分析算法2、实验方式与基木要求:实验方式:上机,分析,设计,测试。基本要求:采取课内上机和业余上机相结合的方式进行,在规定
5、时间内进行程序检查和实验报告。(1)学生应当独立地完成自己所分配到的课题任务,严禁抄袭或拷贝他人的成果。(2)学生能使用面向对象语言(如:Java、VC++、VB、Delphi等)完成各个实验,并且程序正确,功能完整,界而友好。(3)学生在上机做实验前,应事先将程序、调试数据、上机操作顺序等准备好。(4)在实验后,写出实验报告,对需要完成的任务、程序体系结构和模块结构设计、采用的调试数据、上机操作过程、实验过程遇到的问题、如何解决遇到的问题、最后实验的成果等内容进行描述。三、课程实验项目1、项目一:词法分析实验(4学时)①、实验目的a、了解词法分析的主要任务,了
6、解词法分析程序的基本构造原理,学握词法分析程序的手工构造及自动构造方法。b、提高实际动手编程能力,为日后从事软件开发工作打下坚实基础。②、实验内容a、对形如下列的常量说明语句形式(大小写墩感),用手工及口动方法构造一个词法分析程序,分析常量说明串中的保留字、标识符、运算符、各常量名、常量类型及常量值。Const_iNuml2=10;fNum=1.23;sTemp-goodr;bTemp=true;bTemp=false;③、实验要求a、从键盘上输入常量说明串或读入文本文件,最后以问号(或其它符号)作结束标志。b、根据输入串或读入的文木文件中第一个单词是否为“Co
7、nst”判断输入串或文本文件是否为常量说明内容(保留字正规式:Const)oc、识别输入串或打开的文本文件中的常量名。常量名必须是标识符,定义为字母或下划线开头,后跟若干个字母,数字或下划线(标识符正规式:(L
8、_)(L
9、DL)*)od、根据各常量名紧跟等号后面的内容判断常量的类型。(赋值(操作)符正规式:=)其屮:字符串常量定义为放在单引号内所有内容(字符串常量正规式:‘V符号>*')。整型常量定义为带或不带+、・号,不以0开头的若干数字的组合(整型常量止规式:DD*)。实型常量定义为带或不带+、・号,不以0开头的若干数字加上小数点再后跟若干数字的组合(实型常
10、量止规式:DD*.DD*
此文档下载收益归作者所有