编译原理概述.ppt

编译原理概述.ppt

ID:51593160

大小:257.48 KB

页数:13页

时间:2020-03-25

编译原理概述.ppt_第1页
编译原理概述.ppt_第2页
编译原理概述.ppt_第3页
编译原理概述.ppt_第4页
编译原理概述.ppt_第5页
资源描述:

《编译原理概述.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、编译的阶段说明:每个阶段把源程序从一种表示变换成另一种表示。词法分析器语法分析器语义分析器中间代码生成器代码优化器代码生成器出错管理器符号表管理器解释器和编译器的区别词法分析器语法分析器语义分析器源程序中间代码生成器独立于机器的代码优化器代码生成器依赖于机器的代码优化器目标机器代码词法分析器词法分析器的作用和接口,用高级语言编写词法分析器等内容,它们与词法分析器的实现有关掌握下面涉及的一些概念,它们之间转换的技巧、方法或算法非形式描述的语言正规式正规式NFA非形式描述的语言NFANFADFADFA最简DFA非形式描述的

2、语言DFA(或最简DFA)语法分析器文法和语言的基本知识。自上而下的分析方法:预测分析,非递归的预测分析,LL(1)文法。自下而上的分析方法:SLR(1)方法,规范LR(1)方法和LALR(1)方法。LR方法如何用于二义文法。语法分析的错误恢复方法。语法制导的翻译语义规则的两种描述方法:语法制导的定义和翻译方案。设计简单问题的语法制导定义和翻译方案,这是本章的重点和难点。语义规则的三种计算方法:分析树方法、基于规则的方法和忽略规则的方法。S属性的自下而上计算(边分析边计算)。L属性的自上而下计算(边分析边计算)。L属性的自下而

3、上计算(边分析边计算)。递归计算(先分析后计算)。运行时存储空间的组织和管理影响存储分配策略的语言特征各种存储分配策略,主要了解静态分配和动态栈式分配活动记录中各种数据域的作用和安排非局部数据访问的实现方法各种参数传递方式及其实现中间代码生成中间代码的几种形式,它们之间的相互转换符号表的组织和作用域信息的保存数组元素定址的翻译方案,布尔表达式的两种不同实现方式赋值语句和各种控制流语句的中间代码格式和生成中间代码的翻译方案过程调用的中间代码格式和生成中间代码的翻译方案代码生成代码生成器设计中的主要问题:存储管理、计算次序的选择、寄

4、存器的分配、指令的选择等目标机器几种常用的地址模式和一些常用的指令基本块和程序流图简单的代码生成算法独立于机器的优化*1、对各类优化的理解,包括常量合并、公共子表达式删除、复写传播、死代码删除、循环优化等2、到达-定值、活跃变量、可用表达式等几种常用的数据流抽象实例3、把各种数据流模式作为整体来抽象地研究的共同理论框架4、常量传播的特点5、最小化表达式计算次数的一种方法——部分冗余删除方法6、自然循环的概念及自然循环的识别依赖于机器的优化*在指令级并行的机器上,程序的运行速度依赖于下面几个因素程序中潜在的并行处理器上可用的并行从

5、串行程序提取并行的能力在给定的调度约束下发现最佳并行调度的能力并行的提取和并行执行的调度都可以静态地在软件中或动态地在硬件中完成依赖于机器的优化*使用指令级并行的基础问题提取并行的数据相关性分析代码调度的基本概念基本块调度的技术、发现通用程序中的高度数据相关控制流的方法、调度数值程序的软件流水线技术在多处理器系统上,使用数组的计算密集型程序的并行化和数据局部性优化的概念和方法面向对象语言的编译*概述面向对象语言的重要概念和实现技术以C++语言为例,介绍如何将C++程序翻译成C程序实际的编译器大都把C++程序直接翻译成低级语言程序

6、函数式语言的编译*介绍一种简单的函数式编程语言SFP介绍一种抽象机FAM,它的机器语言是SFP语言的目标语言介绍SFP各种语言构造到FAM的编译

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。