关键词:
编译原理
语法分析
符号表
语义分析
中间代码
摘要:
编译原理是现代计算机系统的重要组成部分.在计算机科学的课程中,编译原理占有非常重要的位置.它是每个计算机专业的学生必修的一门课程.但是,编译原理较其它计算机专业课程而言,显得过于枯燥、抽象和难于理解.所以,该课题研究的目的就在于希望利用目前先进的可视化系统集成开发环境,开发出一套编译原理课程辅助教学软件系统,并将该系统运用到教学实践中去.其意义在于使学生对编译原理这门课程的内容有一个更加直观的认识,加深学生对编译原理这门课程的理解,唤起学生的学习兴趣,从而提高教学质量.这也是适应二十一世纪教学改革的需要.而且此次开发用到的技术和概念也可以应用到一般软件设计与开发中去.该系统是在Visual C++6.0环境下开发的编译原理辅助教学软件系统.它主要分为两大部分,第一部分是编译原理教学的课程演示系统.主要实现了文法基础知识演示、自动机状态图表示、自动机的确定化和最小化、自顶向下语法分析LL1分析方法、自底向上语法分析简单优先分析方法、算符优先分析方法、LR0分析方法、SLR1分析方法、LR1分析方法.实现了自动构造LR0、SLR1、LR1分析表.第二部分为编译器系统结构.主要实现对给定的类Pascal源程序进行编译,并显示词法分析结果、符号表、中间代码生成结果等信息.该系统中的各个部分都经过大量的实例反复测试,实验表明,各部分正确无误,效果良好.