版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、编译原理教学大纲课程编号: 052168课程名称: 编译原理 英文名称: Principles of Compilers课程类型: 专业课总 学 时: 64 讲课学时: 48 实验学时: 16学分: 3.5适用对象: 计算机科学与技术专业第一部分 大纲说明一、课程的性质、目的和任务本课程是计算机科学与技术专业的专业课。主要讲授编译技术的基本原理、编译程序的组成及编译程序的开发,让学生充分认识和了解程序设计语言编译程序的基本结构各部分的功能,使学生掌握设计和构造程序语言编译系统的基本原理和技术。二、课程的基本要求了解:形式语言理论、编译器的开发原理。掌握:掌握词法分析、语法分析、标符处理、中间语
2、言生成的一般原理简单运用:代码优化的方法、编译器的开发方法熟练运用:词法分析、语法分析、标符处理、中间语言生成的方法三、本课程与相关课程的联系本课程的先修课程有:离散数学、高级语言程序设计、数据结构等。四、学时分配章节(内容)讲课学时实验学时实习学时总学时第1章 概述22第2章 文法和语言44第3章 词法分析8614第4章 语法分析121022第5章 语法制导翻译和中间代码生成88第6章 运行时存储空间组织66第7章 目标代码生成44第8章 代码优化44合计481664五、教材与参考书教 材:程序设计语言编译原理陈火旺等,国防工业出版社 参考书:1编译原理陈意云等,高等教育出版社2编译原理吕映
3、芝等,清华大学出版社六、教学方法与手段建议以课堂讲授为主,学生独立完成实验,布置一定量的课后习题。讲课要求使用多媒体投影仪等教学设备。七、课程考核方式本课程为考试课程,期末考试为闭卷笔试。学生的课程总评成绩由平时成绩占30%(包括:出勤、作业、实验等)和期末考试成绩占70%两部分构成。第二部分 课程内容大纲第1章 概述(2学时)一、本章的教学目的和要求: 了解翻译与解释程序的特点,掌握源程序分析,了解编译的阶段二、教学内容及要求: 内容:1、 解释程序与编译程序;2、 编译过程和编译程序的结构;3、 解释程序和一些软件工具; 要求:1、了解编译原理课程内容; 2、了解编译器的整体构造。第2章
4、文法和语言(4学时)一、本章的教学目的和要求: 掌握高级语言的基本特征,掌握文法的形式定义,熟练掌握上下文无关文法。二、教学内容及要求: 内容:1、 文法的直观概念;2、 符号和符号串;3、 文法和语言的形式定义;4、 文法的类型;5、 上下文无关文法及其语法树;6、 句型的分析。要求:1、 理解文法的概念;2、 掌握文法和语言的形式定义;3、 掌握上下文无关文法及其语法树;4、 理解推导的含义;5、 掌握推导过程;6、 会根据简单的文法写出语言;7、 会根据语言写出简单的文法。第3章 词法分析(14学时)一、本章的教学目的和要求: 掌握词法分析器的作用,掌握有限自动机、正规式,掌握词法分析的
5、说明语言二、教学内容及要求: 内容:1、 词法分析程序的设计;2、 单词的描述工具;3、 有穷自动机;4、 正规式和有穷自动机的等价性;5、 正规文法和有穷自动机的等价性;6、 词法分析程序的自动构造工具。要求:1、 理解词法分析的含义;2、 掌握正规文法的写法;3、 掌握正规式的写法;4、 掌握有穷自动机的运行;5、 理解对不确定有穷自动机的确定化;6、 理解确定有穷自动机的化简;7、 了解正规文法、正规式和有穷自动机之间的转换;8、 了解词法分析程序的自动构造工具。第4章 语法分析(22学时)一、本章的教学目的和要求: 了解语法分析器的作用,掌握消除左递归的方法,掌握避免回溯对文法的要求,
6、掌握递归子程序法、LL(1)分析法。掌握自下而上语法分析的基本思想和面临的问题,掌握算符优先分析法,掌握LR(k)分析法,掌握LR(0)、SLR(1)、LR(1)、LALR(1)分析表的构造。二、教学内容及要求: 内容:1、 确定的自顶向下分析思想;2、 递归下降的语法分析、3、 LL(1)分析4、 LR分析概述;5、 SLR(1)分析;6、 LR(1)分析;7、 LALR(1)分析;8、 二义性文法在LR分析中的应用;9、 语法分析的自动构造工具YACC。要求:1、 了解确定的自顶向下分析思想;2、 了解LL(1)文法的判别;3、 了解某些非LL(1)文法到LL(1)文法的等价变换;4、 了
7、解不确定的自顶向下分析思想;5、 了解确定的自顶向下分析方法。6、 了解LR分析;7、 了解语法分析的自动构造工具YACC。第5章 语法制导翻译和中间代码生成(8学时)一、本章的教学目的和要求: 掌握属性文法的概念,常见中间代码形式,语法制导翻译方法。掌握中间语言;掌握简单表达式的中间代码生成;掌握多维下标变量的中间代码生成;掌握原子语句及结构语句的中间代码;掌握声明的中间代码。二、教学内容及要求: 内容:1、 属性文法;2、 语法制导翻译概论;3、 中间代码的形式;4、 简单赋值语句的翻译;5、 布尔表达式的翻译;6、 控制结构的翻译;7、 说明语句的翻译;8、 数组和结构的翻译。要求:1、
8、了解属性文法;2、了解语法制导翻译;3、理解中间代码的含义和形式;4、了解各种语句的翻译。第6章 运行时存储空间组织(6学时)一、本章的教学目的和要求: 掌握运行时的存储空间结构、存储空间分配、过程活动记录、变量访问;掌握非正常出口和形式过程语句;掌握分程序记录和动态数组空间。掌握符号表的组织与基本操作。二、教学内容及要求: 内容:1、 数据空间的三种不同使用方法和管理方法;2、 栈式存储分配的实现;3、 参数传递;4、 过程调用、过程进入和过程返回;5、 符号表的组织与管理。要求:1、 了解目标程序运行时的存储组织。2、 了解符号表的作用、组织和管理。第7章 目标代码生成(4学时)一、本章的教学目的和要求: 掌握目标代码、临时变量、寄存器;掌握基于多元式的代码生成、基于树结构的代码生成、基于DAG的代码生成;掌握代码生成器的生成器。二、教学内容及要求: 内容:1、 代码生成概述;2、 一个简单的代码生成程序;3、 几种常用的代码生成程序的开发方法;4、 全局寄存器分配(图着色法);5、 代码生成程序的自动化构造。要求:1、了解代码生成的基本方法。第8章 代码优化(4学时)一、本章的教学目的和要求: 掌握常量表达式优化、公共表达式优化、循环不变表达式外提、循环内归表达式优化。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公共交通防疫物资配置方案
- 新冠肺炎疫情影响下的餐饮业复苏方案
- 医院内部反欺凌培训预案
- 商业综合体围挡施工方案
- 体育赛事疫情防控及观众安全方案
- 环卫行业安全生产整治方案
- 石油运输车辆自燃应急方案
- 纪律心得体会
- 部编版语文小学三年级上学期期末试卷及解答参考
- 护士医德医风考评自我总结
- 《第10课跳跃:跳单双圈》PPT课件(甘肃省市级优课)-科学课件
- 大学生生涯规划与职业发展知到章节答案智慧树2023年鲁东大学
- 葫芦岛鹏翔生物科技(集团)有限公司年产农药系列产品3700吨、年产胡椒环2000吨建设项目环评报告
- 地理规范化学习要求
- 民营医院职称岗位工资级岗位招聘分级表
- 人工智能在中学英语教学中的应用探索共3篇
- 木工制作校本课程开发纲要
- 三秦出版社《综合实践活动》四年级下册全册教案【全套】
- 触电事故应急演练方案 触电事故应急演练记录
- GB/T 33686-2017煤矿水水质分析的一般规定
- GB/T 25995-2010精细陶瓷密度和显气孔率试验方法
评论
0/150
提交评论