欢迎来到天天文库
浏览记录
ID:24045296
大小:47.50 KB
页数:3页
时间:2018-11-12
《《编译原理》课程设计》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、《编译原理》课程设计一、课程设计的目的通过课程设计,真正掌握设计和构造编译程序的基本原理和常用的编译技术,具备系统软件调试能力和开能力,培养分析问题和解决问题的能力。二、课程设计的要求根据选择的课程设计题目提交一份课程设计报告,内容包括:设计要求,算法描述,程序结构,主要变量说明,程序清单,设计技巧,结果分析,心得体会等。三、课程设计题目(一)、编制和调试一个程序,它将用户从键盘上输入的正规式转换为以状态和矩阵形式表示的确定的有穷自动机。1、将正规式转换为NFA2、把NFA确定化为DFAl#号作为输入正
2、规式的终止符。l考虑复合正规式。例如,从键盘输入10
3、(01
4、1)*0
5、1*#,输出为矩阵形式表示的DFA和状态图。l开始符号为0。(二)、1、试编写一个程序,用来计算给定文法的全部FIRST集及FOLLOW集,并判定所给文法是否LL(1)方法。2、试编写一个程序,以给定文法作为输入,由程序自动生成文法的LL(1)分析表M。l确定文法的机内表示。l确定LL(1)分析表的存放方式。(三)、1、试编写一个程序,用来计算机给定文法的FIRST集,LASTVT集,并判定所给文法是否算符优先文法。2、试编写一个程
6、序,以给定的方法作为输入,由程序自动生成文法的优先关系矩阵。l确定文法的机内表示。l确定优先关系矩阵的存放方式。(四)、对以下文法,采用算符优先分析法,对G[S]所定义的赋值语句进行语法分析,并在语法分析过程中将所输入的赋值语句翻译为四元式。1、直接输入根据已知文法构造的算符优先关系矩阵。2、输入已知文法的FIRSTVT集和LASTVT集合,由程序自动生成该文法的算符优先关系矩阵。SàAAàV:=EEàE+T
7、TTàT*F
8、FFà(E)
9、iVàil确定所给文法的机内表示。l确定算符优先关系矩阵的存放方式
10、。(五)、设有文法G[P]:PàbeginZendZàZ;S
11、SSàI:=E
12、ifBthenSelseS
13、whileBdoSEàE+E
14、E-E
15、E*E
16、E/E
17、(E)
18、I
19、CBàEROPEROPà<
20、<=
21、=
22、>
23、>=
24、<>IàIL
25、ID
26、LLàA
27、B
28、C
29、……
30、X
31、Y
32、Z
33、a
34、b
35、c
36、……
37、x
38、y
39、zCàCD
40、DDà0
41、1
42、2
43、……
44、9试采用SLR分析法,对G[P]所定义的语言进行语法分析,并生成四元式(逆波兰式)中间代码。1、直接输入根据已知文法构造的SLR(1)分析表。2、输入已知文法的项目集规范
45、族C={I0,I1,……,In}和转换函数G0(Ii,a)=Ij,由程序自动生成SLR(1)分析表。l为便于进行语法制导翻译,对上述文法进行改写。l确定SLR(1)分析表的存放形式。包括ACTION部分和GOTO部分。l设置分析栈l确定文法存放形式。l词法分析中造标识符表。(六)、设有如下文法:SàAAàV:=EEàE+T
46、TTàT*F
47、FFà(E)
48、digitVài试采用SLR分析法,对所定义的赋值语句进行语法分析,并在分析过程中将所输入的赋值语句翻译为伪代码并解释执行。1、直接输入根据已知文法构造的
49、SLR分析表。2、输入已知文法的项目集规范族C={I0,I1,……,In}和转换函数G0(Ii,a)=Ij,由程序自动生成SLR(1)分析表。l确定文法的机内表示。l确定SLR(1)分析表的存放形式。包括ACTION部分和GOTO部分。l伪代码和寄存器个数由自己定。(七)、根据(六)所给的文法,采用LL(1)分析法对所定义的赋值语句进行语法分析,并在语法分析过程中将所输入的赋值语句翻译成四元式。1、直接输入根据已知文法构造的分析表M。2、输入已知文法的FIRST集和FOLLOW集,由程序自动生成分析表M
50、。3、输入已知文法,由程序自动生成分析表M。l文法左递归应改写文法的规则式。l确定文法的机内表示。l确定LL(1)分析表的存放方式。一、参考文献:1.《编译原理》,陈火旺等,国防工业出版社,19842.《编译程序构造方法》,邱玉圃等,科学出版社,19913.《数字计算机编译程序构造》,D.格里斯,科学出版社,1976联系方式:Email:huhuaijin@21cn.comPhone:23300562
此文档下载收益归作者所有