编译原理教学大纲200603
编译原理课程教学大纲一、课程基本信息课程代码:1020060课程名称(中/英文):编译原理/ Compile Principle 学时/学分:64学时/8学分先修课程:离散数学、程序设计语言、数据结构、计算机组成原理面向对象:计算机科学与技术专业本科生(大三下)开课院(系):计算机学院推荐教学参考书:教材:蒋立源,康慕宁. 编译原理(第三版),西安:西北工业大学出版社,2005.1教学参考书: Louden K C. Compiler Construction principles and Practice(英文版),北京:机械工业出版社,2002 Louden K C. 编译原理与实践,北京:机械工业出版社,2000 康慕宁. 编译原理常见题型及模拟题,西安:西北工业大学出版社,2002二、课程的性质和任务领域方向:程序设计语言及实现重点掌握:有限自动机、正规文法、正规表达式、LL(1)分析法、LR分析法、语法制导翻译等知识;掌握:递归下降分析法、优先分析法、属性文法、中间语言、运行时存储分配、代码优化、常用算法;理解:文法、语言及自动机间的关系、符号表的组织及作用、目标代码生成、查错与校错及面向对象的程序设计语言。三、教学内容和要求本课程共分为十一部分(章),所教学内容的掌握程度的要求分为三个层次。其中,第三、四、五章特别是第四章为本课程的重点掌握部分(计划学时42,占全课程的65.6),第二、六、七、八基本掌握部分(计划学时18,点全课程的28.1),第一、九、十、十一章为一般概念性介绍部分(计划学时4,点全课程的6.3)。以下各章节参考学时数,任课教师可根据教学的具体情况进行适当调节:第一章 绪论(共2 学时)1编译过程概述2编译程序的逻辑结构3编译程序的组织第二章 前后文无关文法和语言(共7学时)1语言、文法及其表示 (1学时) 2句型分析(3学时)3文法的化简与改造(2学时)4文法与语言的Chomsky分类(1学时)第三章 词法分析与词法分析程序(共12学时)1设计词法分析程序应考虑的问题(1学时)2正规文法与状态转换图(3学时)3有限自动机(6学时)4正规表达式与正规集(2学时)第四章 语法分析与语法分析程序(共17学时)1自顶向下的语法分析(共5学时)i)消除左递归(1学时)ii)消除回溯的条件(2学时)iii)递归下降分析(1学时)iv)预测分析(LL(1)分析)(1学时)2自底向上的语法分析(共12学时)i)简单优先分析(2学时)ii)算符优先分析(2学时)iii)LR分析(8学时)第五章 语法制导翻译及中间代码生成(共13学时)1属性文法及属性翻译文法的概念(2学时)2常见中间语言(1学时)3简单算术表达式及赋值语句的翻译(1学时)4布尔表达式的翻译(1学时)5控制语句的翻译(5学时)6含有数组元素的算术表达式及赋值语句的翻译(1学时)7过程说明及过程调用的翻译(1学时)8说明语句的翻译(1学时)第六章 符号表(共2学时)1符号表的组织2符号表的建立与查找第七章 运行时的存储组织与分配(共4学时)第八章 代码优化(共5学时)1局部优化(3学时)2数据流分析原理(1学时)3循环优化(1学时)第九章 目标代码生成(0.5学时)第十章 查错与改错 (0.5学时)第十章 面向对象程序设计语言(1学时)四、实验(上机)内容和基本要求根据计算机专业的教学计划,编译原理课程设计为单独开设的实践性教学环节,因此,本课程无实验及上机安排。具体实践环节可参考编译原理课程设计教学大纲。五、各教学环节学时分配学时讲课习题课讨论课实验课其他合计第一章22第二章77第三章1212第四章1717第五章1313第六章22第七章44第八章55第九章0.50.5第十章0.50.5第十一章11六、对学生能力培养的要求本课程是计算机科学与技术专业本科生的专业基础课。设置本课程的目的,在于系统地向学生介绍编译系统的结构、工作原理以及编译程序各组成部分的设计原理和实现技术,使学生通过本课程的学习之后,既掌握编译理论和方法方面的基本知识,也具有设计、实现、分析和移植编译程序等方面的初步能力,为从事计算机软件开发工作及理论研究工作打下坚实的基础。七、其他说明课程教学网站:http:/202.117.247.101/netteach/login.aspx教学参考网站:西北工业大学精品课程介绍网站http:/202.117.80.9/jp2005/20/考核成绩除笔试外,还包括平时上课考勤及作业提交和完成情况八、考核方法闭卷考试平时成绩撰写人:康慕宁制定日期:2006年3月8日审定人:蒋立源审定日期:2006年3月20日学院审查意见:主管院长: