《编译原理》课程实验教学大纲 【编 写】 朱少林 【审 核】 【课程类别】 专业选修 【课程学时】 51 【开课学期】 【实验学时】 16 - 34 【授课专业】计算机科学与技术 1、 课程简介 编译程序是现代计算机系统的基本组成部分之一。“编译原理”是计算机专业的一门重要专业课,同时也是一门实践性很强的课程,只有通过实践,才能真正掌握。编译技术,作为一门计算机软件技术,内涵极为丰富。有关词法、文法的分析,有关表格的处理,有关符号信息的处理方法,有关清晰有效的算法描述方法,有关部门形形色色数据结构的运用,自动机理论及其规划程序的指导作用。通过对本课程的学习,不仅可以掌握编译程序本身的基本实现原理和技术,同时也有助于提高对程序设计语言的理解,提高语言设计及程序设计能力。 2、实验目的及要求 通过实验环节,加强学生对所学编译原理知识的深入理解及熟练掌握,为今后进行各种程序的编制和开发打下良好的基础。 要求在掌握理论知识的基础上,设计有关算法,编写程序,调试程序。编程语言可为C、C++或 Java。 1) 正确理解什么是编译程序;了解编译程序工作的基本过程及其各阶段的基本任务;熟悉编译程序的组成结构;了解编译程序的生成过程和构造工具。 2) 理解符号表的作用及符号表组织和使用方法,了解名字的作用范围,了解符号表中一般应包含的内容。 3) 理解词法分析器功能及形式;熟练掌握词法分析器设计的原理,掌握运用状态转换图进行词法分析器设计。 4) 正确理解自下而上语法分析的基本思想,以及归约、短语、句柄、分析树等概念;根据预先由文法规则建立的LR( k)分析表,对输入串进行语法分析。 3、对先修课的基本要求 C 语言及程序设计、离散数学、数据结构、操作系统、面向对象程序设计等。 4、实验方式及要求 1) 了解编译程序工作的基本过程及其各阶段的基本任务;熟悉编译程序的组成结构;了解编译程序的生成过程和构造工具。 2) 理解程序语言词法、语法和语义等概念;熟悉高级程序语言一般结构和主要共同特征。 3) 熟练使用Java 或 C/C++语言,编程实现词法分析、符号表管理、中间代码生成和语法分析等程序,理解和掌握编译系统的工作原理。 5、主要仪器设备 微型计算机实验平台: 操作系统:Windows 2000/XP 语言平台 选用Visual C++: VC++6.0 或以上兼容版本 选用C: Turbo C 2.0 或以上兼容版本 选用Java: J2SDK1.5.0_06 或兼容版本、Ecl...