编译原理—实验指导书-1

编译原理—实验指导书-1

ID:18944338

大小:332.10 KB

页数:17页

时间:2018-09-23

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

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

1、《编译原理》实验指导书17《编译原理》实验指导书目录实验一、词法分析程序设计3实验一、递归下降语法分析程序设计517《编译原理》实验指导书实验一、词法分析程序设计一、实验目的通过设计、开发一个高级语言的词法分析程序,理解编译程序中词法分析器的实现原理,掌握高级程序设计语言中的各类单词的词法分析方法,加深对词法分析原理(包括正规文法、正规表达式、有限自动机、NFA到DFA的转换、DFA的最小化)的理解,提高词法分析方法的实践能力。二、实验内容及要求1.选择一种熟悉的高级语言(如C语言,Sample语言等),根据该高级语言

2、的词法规则,总结其单词种类与各类单词的结构特征;设计、编写、调试一个词法分析子程序。本实验以Sample语言为例。2.将该源程序的源文件经词法分析后输出以二元组形式(单词种别码,单词符号的属性值)表示的单词符号序列。3.编写的程序具有一定的查错能力。提交的实验报告中要有实验名称、实验目的、实验内容、实验程序清单、调试过程和运行结果,程序的主要部分做出功能说明,并有实验收获体会或改进意见等内容。4.实验前请仔细阅读实验预习提示,提示中程序仅供参考三、实验预习提示1.Sample语言的字符集1)Σ::=

3、<

4、DIGIT>

5、2)Σ::=

6、

7、3)::=A

8、B

9、C

10、……

11、x

12、y

13、z4)::=0

14、1

15、2

16、……

17、95)::=+

18、-

19、*

20、/

21、=

22、<

23、>

24、(

25、)

26、:

27、;

28、,

29、’

30、.2.Sample语言的单词1)::=

31、

32、

33、

34、2)::=and

35、begin

36、bool

37、char

38、const

39、do

40、else

41、end

42、false

43、

44、for

45、if

46、input

47、integer

48、not

49、or

50、output

51、program

52、read

53、real

54、repeat

55、then

56、to

57、true

58、until

59、var

60、while

61、write3)::=

62、

63、4)::=

64、

65、

66、5)::=

67、+

68、-17《编译原理》实验指导书1)::=

69、2)

70、L>::=

71、.

72、.e

73、.E3)::=true

74、false4)::=<Σ>

75、<Σ>5)::=’’6)::=

76、

77、7)::=+

78、-

79、*

80、/8)::=>

81、<

82、<>

83、>=

84、<=

85、==9)::=and

86、or

87、not10)::=/*

88、*/

89、=

90、(

91、)

92、:

93、;

94、,

95、’

96、.1.Sample语言程序

97、举例(1)/*thisisasampleprogramwritinginsamplelanguage*/(2)Programexample1;(3)/*usedforillustratingcompilingprocess*/ (4)var(5)a,b,c:integer;(6)x:char;(7)begin(8)if(a+c*3>b)and(b>3)thenc:=3;(9)x:=2+(3*a)-b*c*8;(10)forx:=1+2to3dob:=100;(11)whilea>bdoc:=5;(12)repeata:

98、=10;untila>b;(13)end.#2.词法分析器的功能和输出格式词法分析器的功能是输入以字符串表示的源程序,从左向右扫描每行源程序的符号,拼成单词,换成统一的二元式(单词种别码,单词符号的属性值)表示。对给定的程序通过词法分析器识别一个个单词符号,并以二元式(单词种别码,单词符号的属性值)显示,本程序是通过对给定路径的文件的分析后以单词符号和文字提示显示),本实验中,采用单词种别码是一符一种种别码的方式。类别单词种别码类别单词种别码关键字and1运算符+28begin2-29bool3*30char4/31c

99、onst5<32do6>33else7<=3417《编译原理》实验指导书end1>=28false2==29for3<>30if4标识符id31input5常数整常数32integer6实常数33not7字符常数34or8布尔常数35output9分界符=36program10;37read11,38real12‘39repeat

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

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

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