编译原理实验指导书50530new

编译原理实验指导书50530new

ID:34606140

大小:228.00 KB

页数:16页

时间:2019-03-08

编译原理实验指导书50530new_第1页
编译原理实验指导书50530new_第2页
编译原理实验指导书50530new_第3页
编译原理实验指导书50530new_第4页
编译原理实验指导书50530new_第5页
资源描述:

《编译原理实验指导书50530new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、编译原理实验指导书课程名称:编译原理实验适用专业:大学二、三年级使用教材:自编《编译原理实验指导书》学时数:10编写日期:2009年10月主要教学参考书目:陈火旺等编《程序设计语言编译原理》第3版,国防工业出版社实验要求及考核方式如下:1.实验课堂要求:(1)遵守实验室上机规章(2)每次实验课进行登记(3)上课不能做与实验课程无关的内容(4)考勤与课堂考勤相同(5)实验成绩占总成绩的20%2.实验内容要求:(1)实验前:需要提前预习,结合课堂教学和实验指导书,完成相关实验程序的编写,并做静态检查,做好记录,以备检查;(2)上机实验:上机调试程序,结合程序结果进一步理解课堂内

2、容;(3)上机实验后:完成实验报告,并对本次实验进行小结。(4)实验结果(程序和文档)自己保存,统一上交3.考核依据:(1)实验过程:老师当堂检查(2)实验报告:实验报告每次上交(3)实验结果:实验编写的程序上交3次,词法分析,中间代码生成程序(包括源程序、可执行文件、使用、限制说明文档)及自选一个本学期实验中的一个1实验一:将某门语言(建议Pascal语言,可自选)的关键字按字典顺序编上类号存入一张表格中,能从键盘随意输入一个标识符,输出该标识符的类号。1、实验步骤:(1)定义关键字表定义如下格式的表格,将Pascal语言中的单词(关键字、界符、数的类型)的编码输入:单词

3、符号类号单词符号类号单词符号类号单词符号类号and0procedure12;24*36begin1program13:25/37const2read14·26=38div3real15(27<39do4then16)28>40else5type17[29<>41end6var18]30<=42function7while19··31>=43if8write20单目加32:=44integer9标识符21单目减33{45not10无符号数22+34}46or11,23-35#47(2)编写一个查找函数lookup(char*str)该函数的功能是:查找指定的字符串str(关键

4、字和界符)是否在上述表格中,若在,返回类号(token值)和该字符串本身。查找函数可以使用顺序查找,也可以使用折半查找。2、实验方式及学时分配:采用教师讲授+学生动手实验的方式,以学生实验为主总共2学时,教师讲解不超过20分钟3、教学目标及基本要求:1)要求学生掌握词法分析器的功能及接口设计;2)要求学生熟悉C语言,若为自选语言,必须在规定日期前选定;3)要求学生掌握表格的定义方式,并能编写在表格中查找单词的函数4)实验一是基本的验证性实验,要求每位学生都要以较高的质量完成且上交实验报告和电子版实验程序。4、教学的重点和难点:1)重点:表格的定义方法2)难点:判别给定单词是

5、否在表格中5、实验组织形式:主要采取教师先介绍实验的目的,实验内容和实验达到的要求,再让学生根据自己的情况完成实验,实验结束后要求学生填写实验报告册。6、实验过程中应注意的问题:主要要求学生巩固以前学习的高级语言程序设计知识,并完成一个小型编译程序的设计。若学生对高级语言不熟悉,督促学生查阅相应资料,或学习查阅帮助,熟练掌握一门高级语言。2实验二:根据书上P43的状态转换图或如下的产生式,实现一个Pascal语言单词的分类(关键字,标识符,单界符,双界符,数,其他)。单词集的定义:(1)<单词集>::=<关键字>

6、<单界符>

7、<双界符>

8、<标识符>

9、<常数>(2)<关键字>

10、::=and

11、array

12、begin

13、bool

14、call

15、case

16、case

17、char

18、const

19、do

20、else

21、end

22、false

23、for

24、if

25、input

26、integer

27、not

28、of

29、or

30、output

31、program

32、read

33、real

34、repeat

35、set

36、then

37、to

38、true

39、until

40、var

41、while

42、write(3)<单界符>::=+

43、-

44、*

45、/

46、<

47、=

48、>

49、(4)<双界符>::=/*

50、*/

51、<=

52、>=

53、<>

54、:=(5)<标识符>::=<字母>

55、<标识符><数字>

56、<标识符><字母>(6)<常数>::=<整数>

57、<布尔常数>

58、<字符常数>

59、<常数标

60、识符>

61、<实数>(7)<整数>::=<数字>

62、<整数><数字>(8)<布尔常数>::=true

63、false(9)<字符常数>::='除'以外的任意字符串'(10)<常数标识符>::=<标识符>(11)<实数>::=<整数>.<整数>1、实验步骤:1)分别编写识别关键字、单界符、双界符、标识符、常数的函数;2)对常数的识别可降低要求。2、实验方式及学时分配:采用教师讲授+学生动手实验的方式,以学生实验为主总共2学时,教师讲解不超过15分钟,先对上一次的实验进行小结,指出问题3、教学目标及基本要求:1)要求学生掌握状态

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。