编译原理学习指导大纲

上传人:新** 文档编号:470261652 上传时间:2023-03-21 格式:DOC 页数:3 大小:20.01KB
返回 下载 相关 举报
编译原理学习指导大纲_第1页
第1页 / 共3页
编译原理学习指导大纲_第2页
第2页 / 共3页
编译原理学习指导大纲_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《编译原理学习指导大纲》由会员分享,可在线阅读,更多相关《编译原理学习指导大纲(3页珍藏版)》请在金锄头文库上搜索。

1、(7) 编译原理学习指导大纲一 课程的性质和目的 编译原理是计算机与应用专业必修课程。设置本课程的目 的是:(1)使学生了解程序语言编译系统的结构及各部分的功能; (2)使学生掌握设计和构造程序语言编译系统的基本原理和技术二 课程内容 编译概述、语言的基本知识,词法分析,语法分析,语法制导翻译,符号表, 运行时刻环境,中间代码生成,优化,目标代码生成,并行编译基础。三各章重点内容:1 编译概述、语言的基本知识 知识点:文法和语言的形式定义,分析树和二义性,形式语言 概观。 要求: 了解:0型,1型文法的定义。 理解:字母表,符号事的定义及符号事的有关术语,子树。 深刻理解:上下文无关文法,推导

2、,语言,最左推导,最右 推导,分析树和二义性。 掌握:符号串及符号串集会的运算。 熟练掌握: (1)已知上下文无关文法G和句型W,构造出w的推导, 最左推导,最右推导,分析树; (2)判定上下又无关文法G是二义性的。 (3)已知上下文无关文法G,求出L,使得L=L(G); 已知上下文无关语言 L,求出 G,使得 L(G)=L (注:(2)和(3)针对难度不大的问题。)2编译概述 知识点:翻译和解释,编译程序的组成部分,有关编译程序 的设计与实现。 要求: 了解:翻译和解释。 理解:编译程序的组成部分和遍的概念。3词法分析 知识点:词法分析程序的功能,输入缓冲,正规表达式与 正规集,正规表达式与

3、正规文法,壮态转换图与 基本符号的识别,有限自动机。 要求: 理解:词法分析程序的功能。词法分析程序与语法分析程序 的关系。 深刻理解:正规表达式,有限自动机,正规文法以及三者之 间的等价性;确定的有限自动机和非确定的有限 自动机之间的等价性。 掌握:设置输入缓冲区。 熟练掌握: (1)对于某一程序语言,设置其词类种别编码和词类符号, 画出其识别各种词类的确定的有限自动机,用某一 程序语言实现它。 (2)对于某一正规集,写出其正规表达式,构造其非确 定的有限自动机、确定的有限自动机,并将其最小化。4语法分析 知识点:语法分析器的作用,书写文法。 要求: 深刻理解:语法分析器的作用,左递归文法不

4、能用来构造自 顶向下分析, 掌握:对于已知文法G,构造其LR(1)分析表,LALR(1)分析表。 熟练掌握:(1) 自顶向下分析:对于已知文法G,消除二义性,消除左递归,提取左公因子,构造其预测的递归下降分析器,求其FIRST 和FOLLOW集,构造其LL(1)分析表。 (2)自底向上分析:规范规约:找出W的短语,直接短语和句柄。算符优先分析法:对于已知表达式文法G,构造其算符优先关系表和优先函数。自底向上分析是移近一归约分析, 关键是求规范句型的句柄。LR分析器的逻 辑结构和工作过程。LR分析器。 (3)对于已知文法 G,构造其含 LR(0)项目识别其活前缀 的确定的有限自动机,构造其SLR

5、(1)分析表;构造 其含 LR(1)项目识别其活前缀的确定的有限自动机, 构造其LR(1)分析表。及用LR分析思想处理二义性文法5语法制导翻译 知识点:语法制导定义,抽象语法树的构造,S-属性定义及其 自底向上计算属性,L-属性定义,自顶向下的翻译,自 底向上计算继承属性。 要求: 理解:语法制导翻译。 深刻理解:属性,综合属性,继承属性,依赖图,计算顺序,语 法树,语法制导定义,S-属性定义,L-属性定义, 翻译模式。 熟练掌握:对于已知文法G和翻译任务,构造其L-属性定义, 将其改造成适于自顶向下分析或自底向上分析的 翻译模式。6中间代码生成 知识点:中间语言,说明语句,赋值语句,布尔表达

6、式, CASE语句,过程调用语句,控制流语句的翻译以 及回填技术。 要求: 理解:三元式,间接三元式。 深刻理解:语法树,有向非循环圈,三地址代码,四元式,三元式,逆波兰表示。 掌握:布尔表达式(求值)以及CASE语句翻译。 熟练掌握: (1)程序中说明的处理,重要的是在符号表中维持作用域信息; (2)数组元素,赋值语句,过程调用语句的翻译模式; (3)用回填技术实现布尔表达式和控制流语句的翻译。7符号表:符号表的组织,重要的是在符号表中维持作用域信息8运行时刻环境 知识点:有关源语言中一些问题的讨论,存储组织,运行时 刻存储分配策略,对非局部名子的访问,参数传递, 。 要求: 了解:动态作用

7、域,堆式存储分配。 理解:静态存储分配,参数传递方式,符号表的表项。 深刻理解:程序结构,活动树,控制栈,活动记录,栈式存 储分配,访问链(存取链),display表。 掌握:把符号表组织成线性表或散列表。 熟练掌握: (1)对于已知过程,设计出其活动记录; (2) 对于已知程序,若采用钱式存储分配,随着程序的 执行,画出相应动态栈,访问键(存取链)以及 display表的变化;反之,根据动态栈,访问链(存” 取键)以及display表的变化,画出相应的程序结构。8优化:熟练掌握:(1) 局部优化:基本块,流图,DAG优化。(2) 循环优化:代码外提,强度消弱,删除归纳变量。9目标代码生成 知识点:目标机器,运行存储管理,待用信息,一个简单的代码生成器,基本块的DAG表示法,从DAG生成目标代码。 要求: 理解:目标机器。 深刻理解:待用信息,基本块的DAG表示法。 掌握:计算变量的下次引用信息;一个简单的代码生成器; 从DAG生成目标代码。熟练掌握:对于已知三地址代码,画出其基本块和流图;对于一个基本块,画出其DAG表示法。寄存器的分配:在循环中将寄存器固定分配给节省执行代价最多的变量使用。10并行编译基础: 主要掌握:并行体系结构,及数据依赖关系

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 汽车技术

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号