



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、编译原理课程教学大纲(课程编号711302 学分-学时-上机4.0-64-16 )东南大学计算机科学与工程学院一、课程的性质与目的本课程是软件工程专业必修的专业核心课。本课程的教学目的, 是使学生在学习程序设计基础及语言和数据结构的基础上,进一步理解程序及程序设计语言的本质,掌握程序词法分析和句法分析的基本原理和方法。学会构造一个编译程序, 用以将一种语言所编写的程序(如,用C语言编写的程序)等价变换为另一种语言所编写的程序(如,用汇编语言编写的程序),并能对变换过程中所生成的中间代码程序及变换所得的程序进行优化,以培养良好的程序设计优化思维,提高学生的编程能力,为学习有关专业课程和进行大型软
2、件实践打 下必要的基础。二、课程内容的教学要求1 .编译原理及编译程序构造引论(1)开设编译原理课程的主要作用:让学生理解开设编译原理课程的意义和作用,编译原理课程在计算机专业课程体系中的地位,学习编译原理课程应采用的方法,编译原理课程知识体系结构,让学生初步认识学习编译原理课程的重要性和潜在的使用价值。(2)编译程序及其构造过程概述:介绍编译程序的基本含义、作用和结构,简述编译程序构造的基本过程,以让学生形成编译程序构造的总体印象。2 .(程序设计)语言和语法描述(1)语言描述体系结构: 了解语言的语法、语义和语用的基本含义及相互作用,掌握 描述语言语法的基本方法和过程, 使学生清楚语言语法
3、描述应包括由字符构造单词的词法描 述,及由单词构造句子的句法描述。(2)语言和文法的基本概念: 掌握语言与文法的相关基本概念,如,串、句子、句型、 文法、产生式、推导与归约等,语言文法对语言语法描述的作用,文法的形式化描述方法和过程,Chomsky形式语言文法体系及其在语言语法描述中的应用、特别是正规文法及上下 文无关文法在语言语法描述中的应用。(3)从语言构造文法:了解常见语言句子构造模式,掌握从典型语言句子模式构造对应无产生式文法的方法,使学生能够理解由语言构造文法的重要性。(4)语法树、分析树与二义文法:掌握语法树、分析树及二义文法的基本概念,如,语法树、分析树、短语、句柄、二义文法,语
4、法树在语言语法分析过程中的作用,语法树构 造方法和过程,二义文法对语言文法的简化描述的作用。3 .词法分析(1)词法分析程序的作用和基本构造过程:让学生掌握词法分析程序的作用和基本构造过程,了解词法分析程序构造的关键问题,如,词法描述方法、由词法描述构造相应词法分析程序的思想方法。(2)正规表达式、正规语言与正规文法:掌握正规表达式对单词模式表达的作用,由基本字符构造正规表达式的方法和过程,识别一个正规表达式的方法, 以及正规语言的基本概念,理解正规表达式、正规语言、正规文法三者之间的等价关系和转换方法。(3)有限自动机:让学生了解有限自动机对正规表达式识别(也就是单词识别)的作用,掌握有限自
5、动机的基本概念, 熟悉由正规表达式构造非确定有限自动机的方法与过程,掌握 将非确定有限自动机确定化的理由、 方法与过程, 熟悉确定有限自动机最小化的理由、 方法和过程,了解正规文法(正规表达式、正规语言)与有限自动机之间的相互转换方法、以及由确定有限自动机构造相应词法分析程序的方法和过程。( 4)词法分析程序生成工具Lex : 了解 Lex 的基本思想和使用方法。4. 语法(句法)分析( 1)语法分析基本过程和方法概述: 进一步理解上下文无关文法与语言语法描述的关联, 了解利用下推自动机进行语法分析的基本过程, 熟悉典型语法分析方法的基本思想, 深 刻理解“推导 匹配” 、 “移进 归约”的语
6、法分析的思想。( 2)自顶向下语法分析: 理解自顶向下语法分析方法的基本思想和基本过程,了解基于递归下降分析法构造语法分析程序的基本思想和基本过程,掌握预测分析法LL(1) 的基本思想和基本技巧、特别是左递归消除、首符集First 和随符集 Follow 构造的技巧,能够由上下文无关文法构造 LL(1)分析表,了解基于 LL(1)分析表进行具体句子的分析过程。( 3)自底向上语法分析: 理解自底向上语法分析方法的基本思想和基本过程,重点掌握 LR 分析法的基本思想和基本过程, 能够由上下文无关文法构造简单的 LR 分析表 (SLR(1)分析表 )和规范的 LR 分析表 (LR(1) 分析表 )
7、, 了解由 LR(1) 构造 LALR(1) 分析表的基本思想和基本过程。( 4)二义文法的语法分析: 掌握语法分析过程解决文法二义性的基本思想,能够通过二义文法的附加条件构造相应的SLR(1)或LR(1)分析表。( 5)语法分析程序生成工具YACC : 了解 YACC 的基本思想和应用过程。5. 语义分析( 1)属性文法: 了解引入符号属性对语言语义描述的作用,理解将上下文无关文法转换为属性文法的意义、 过程和关键, 掌握属性文法中语义规则的使用方法, 理解边进行语法分析、边进行语义分析的语义属性值计算的基本思想。( 2)属性文法中的综合属性值计算方法: 能够由只具有综合属性的属性文法构造一
8、个句子的加以属性标注的分析树。( 3)类型检查: 了解类型作为一种特殊的属性时的属性计算过程和方法,即,类型检查的基本思想和方法。6. 中间代码生成( 1) 常见中间代码形式: 了解常见中间代码形式, 掌握三地址码和四元式的基本思想。( 2) 型语句生成三地址码的方法: 掌握表达式、基本赋值语句、含有数组元素的语句、 If 语句、 While 语句翻译成三地址码的方法,能够将一段含有上述语句的程序翻译成三地址码语句序列。( 3) 典型语句生成四元式的方法: 掌握表达式、 基本赋值语句、 含有数组元素的语句、If 语句、 While 语句翻译成四元式的方法,能够将一段含有上述语句的程序翻译成四元
9、式序列,熟悉翻译过程中拉链回填的基本技巧。7. 运行时环境( 1)程序执行过程与激活树: 了解程序在计算机系统中执行过程,掌握激活树概念。( 2)程序运行时数据存储空间分配策略: 了解程序运行时数据存储空间分配策略,重点理解栈式存储分配策略。( 3)栈式存储分配策略: 掌握活动记录的基本概念,理解C 语言程序运行过程中基于活动记录的数据存储分配策略,能够构造一个C 语言程序对应的数据存储栈图。8. 程序优化( 1) 程序分块与程序流图: 了解程序优化的一般方法和过程, 掌握程序基本块的概念,能够将一段程序划分为基本块、并构造以基本块为结点的程序流图。( 2)块内优化: 能够构造表示一个基本块所
10、涉及数据量及其关联的有向无环图,掌握基于有向无环图的块内优化方法,能够对一个基本块进行块内优化并写出优化后的代码序列。( 3)循环优化:掌握必经结点集和回边的基本概念,能够找出程序流图中的循环,了 解循环优化的基本方法。( 4)基于数据流分析的优化:了解数据流分析的作用,理解变量引用定值链、定值到达数据流方程、活跃变量数据流方程的含义和作用。三、上机实习要求了解程序设计语言的词法和语法(句法)的表示形式,理解词法和语法分析程序的构造方 法和过程,了解简单的块内优化方法。四、能力培养的要求1 .分析能力的培养: 主要是对程序结构、编译程序构造方法和过程、程序优化方法进 行分析的能力的培养,同时也
11、要注意培养针对具体程序设计语言构造编译程序的能力的培 养。2 .算法分析和实现能力的培养:要求学生通过本课程的学习,具备对各种相关算法进行实现的能力。3 .外文文献阅读能力的培养:该课程采用英文教材、英文课件和英文试卷,要求学生通过本课程的学习,能够具备直接阅读专业外文文献的能力。4 .自学能力的培养: 通过本课程的教学,要培养和提高学生对所学知识进行整理、概 括、消化吸收的能力,以及围绕课堂教学内容,阅读参考书籍和资料,自我扩充知识领域的 能力。5 .表达能力的培养:主要是通过作业,清晰、整洁地表达自己解决问题的思路和步骤的能 力。6 .创新能力的培养: 培养学生独立思考、深入钻研问题的习惯
12、,和对问题提出多种解 决方案、选择不同方法,以及对方法进行简化和举一反三的能力。五、建议学时分配课程内容讲课习题课或课堂讨论实验上机编译原理及编译程序构造引论3开设编译原理课程的主要作用1编译程序及其构造过程概述2程序设计语言和语法描述92语言描述体系结构2语言和文法的基本概念2从语言构造文法32语法树、分析树与二义文法2词法分析1024词法分析程序的作用和基本构造 过程1正规表达式、正规语言与正规文法2有限自动机724词法分析程序生成工具Lex1语法分析15412语法分析基本过程和方法概述1自顶向下语法分析424自底向上语法分析728二义文法的语法分析2语法分析程序生成工具 YACC1语义分析52属性文法2属性文法中的综合属性值计算方 法22类型检查1中间代码生成62常见中间代码形式1典型语句生成三地址码的方法1典型语句生成四元式的方法42运行时环境52程序执行过程与激活树1程序运行时数据存储空间分配策 略1栈式存储分配策略32程序优化92程序分块与程序流图2块内优化32循环优化2基于数据流分析的优化2复习2六、考核方式总评成绩=平时成绩(包括作业和考勤)+上机实验+期末考试成绩平时成绩占10%上机试验占20%期末考试成绩占70%七、教材及参考书1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年投资咨询工程师常见问题试题及答案探讨
- 2024年银行从业资格考试复习计划试题及答案
- 2024年基金考试技巧小贴士试题及答案
- 2024年投资咨询工程师新趋势试题及答案
- 土地利用变化与生态系统服务的关系试题及答案
- 家庭教育指导师教学评估试题及答案
- 外科护理案例分析与应用
- 宝宝早期交流的必要性试题及答案
- 2024监理考试的关键策略试题及答案
- 黑龙江省东南联合体2024-2025学年高三下学期阶段测试生物试题试卷含解析
- 物流运输过程中的法律法规试题及答案
- 《新能源汽车技术》课件-充电系统结构和工作原理
- 直流微电网课件
- 高中地理-高三地理复习课件-透过日晷看太阳视运动(共21张PPT)
- 成本收集器-重复制造
- 安全工器具检查表
- 许慎《说文解字》(全文)
- 保健院业务部门绩效考核实施方案(试行)及质量控制指标
- 人防工程基本知识(PPT184页)
- 山东中医药大学中医学(专升本)学士学位考试复习题
- 高一班守纪律讲规矩主题班会
评论
0/150
提交评论