南华大学
编译原理课程设计名:编译代生成器设计
专业 计算机科学与技术 学生姓名 熊浩斌 班 级 计算机01班 学 号 20109440114 指导老师 陈星
实验地点 8栋 2-209
完成日期:2013.6.2
一、课程设计的目的
编译原理课程兼有很强的理论性和实践性,是计算机专业的一门非常重要的专业基础课程,它在系统软件中占有十分重要的地位,是计算机专业学生的一门主修课。为了让学生能够更好地掌握编译原理的基本理论和编译程序构造的基本方法和技巧,融会贯通本课程所学专业理论知识,提高他们的软件设计能力,特设定该课程的课程设计,通过设计一个简单的PASCAL语言(EL语言)的编译程序,提高学生设计程序的能力,加深对编译理论知识的理解与应用。
二、课程设计的要求
1、 明确课程设计任务,复习编译理论知识,查阅复印相关的编译资料。
2、 按要求完成课程设计内容,课程设计报告要求文字和图表工整、思路清晰、算法正
确。
3、 写出完整的算法框架。 4、 编写完整的编译程序。
三、课程设计的内容
课程设计是一项综合性实践环节,是对平时实验的一个补充,课程设计内容包括课程的主要理论知识,但由于编译的知识量较复杂而且综合性较强,因而对一个完整的编译程序不适合平时实验。通过课程设计可以达到综合设计编译程序的目的。本课程的课程设计要求学生编写一个完整的编译程序,包括词法分析器、语法分析器以及实现对简单程序设计语言中的逻辑运算表达式、算术运算表达式、赋值语句、IF语句、While语句以及do…while语句进行编译,并生成中间代码和直接生汇编指令的代码生成器。
四、总体设计方案及详细设计 总体设计方案: 1.总体模块
主程序 词法分析程序 语法分析程序 中间代码生成程序 2.
表2.1 各种单词符号对应的种别码
单词符号 bgin If Then wile do end lettet(letter|digit)* dight dight* + — * / 种别码 1 2 3 4 5 6 10 11 13 14 15 16 = ; ( ) # 单词符号 : := < <> <= > >= 种别码 17 18 20 21 22 23 24 25 26 27 28 0 详细设计:
4.1界面导入设计
(1)一共三个选项:
①choice 1--------cifafenxi
②choice 2--------yufafenxi ③choice 3--------zhongjiandaima (2)界面演示
图一
图二
图三
相关推荐: