随笔分类 -  编译原理

编译原理与编译程序构造复习笔记
摘要:代码优化 以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 概述 .1. 目的:提高目标代码运行效率。时间效率(减少运行时间);空间效率(减少内存容量)。 原则:进行优化必须严格遵循“不能改变原有程序语义”原则。 2. 优化的分类 从优化的层次,与机器是否有关,分为:独立于机器的优化、 阅读全文
posted @ 2018-01-19 23:35 AlvinZH 阅读(3665) 评论(0) 推荐(0)
摘要:错误处理 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 1. 目标:编译程序对于语法和语义正确的源程序要正确地编译生成等价的目标代码;而对于错误的源程序不能一发现就停止,而是要能检查出错误的性质和出错位置,并使编译能继续下去,同时尽可能多而准确地发现错误和指出各种错误。 2. 阅读全文
posted @ 2018-01-19 23:34 AlvinZH 阅读(3649) 评论(0) 推荐(0)
摘要:源程序的中间形式 以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 概述 1. 源程序的中间形式实在编译程序将高级语言翻译为汇编语言或机器代码的过程中产生的一种内部表示,也称为中间表示、中间语言或中间代码。 特点是结构简单,含义明确,有许多的优点。 2.优点 生成中间代码时,可以不考虑 阅读全文
posted @ 2018-01-19 06:30 AlvinZH 阅读(1435) 评论(0) 推荐(0)
摘要:自底向上分析之LR分析法 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 基本概念 1. LR分析:从左到右扫描(L)自底向上进行规约(R),是 规范规约 ,也即最右推导(规范推导),是自底向上分析方法的高度概括和集中。 2. LR(k)文法确定的分析器适用于一大类 上下文无关 阅读全文
posted @ 2018-01-18 14:44 AlvinZH 阅读(3806) 评论(0) 推荐(0)
摘要:自底向上分析之算符优先分析法 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 基本过程 1. 一般方法:采用自左向右地扫描和分析输入串,从输入符号串开始,通过反复查找当前句型的句柄(最左简单短语),并利用有关规则进行规约。 分析过程如下,关键步骤是第一点! 找出当前句型的句柄 阅读全文
posted @ 2018-01-18 11:22 AlvinZH 阅读(5209) 评论(0) 推荐(0)
摘要:语法分析之自顶向下分析 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 基本过程分析 1. 一般方法:对任一字符串,试图用一切可能的方法,从树根节点(开始符号)出发,根据文法自上而下地为输入符号串建立一棵语法树。直观理解为从开始符号出发,依据规则建立推导序列,最后推至目标字符串 阅读全文
posted @ 2018-01-17 20:56 AlvinZH 阅读(9563) 评论(1) 推荐(0)
摘要:语法分析基础 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 功能与方法 1. 根据文法规则,从源程序单词符号串中识别出语法成分,并进行语法检查,未予以分析和代码生成做准备。 2. 两大分析方法:自顶向上分析与自底向上分析。 自顶向下分析 1. 自顶向下分析方法:直观理解为从 阅读全文
posted @ 2018-01-17 20:22 AlvinZH 阅读(943) 评论(0) 推荐(0)
摘要:词法分析 说明:以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 语法分析基础 1. 词法分析程序的功能 词法分析:根据词法规则识别及组合单词,进行词法检查; 对数字常数完成数字字符串到(二进制)数值的转换; 删去空格、换行、制表等字符和注释。 2. 实现方案 词法分析单独做一遍。结构 阅读全文
posted @ 2018-01-17 02:36 AlvinZH 阅读(3165) 评论(0) 推荐(1)
摘要:绪论概念&文法与语言 以老师PPT为标准,借鉴部分教材内容,AlvinZH学习笔记。 绪论基本概念 1. 低级语言:字位码、机器语言、汇编语言。与特定的机器有关,功效高,但使用复杂、繁琐、费时、易出错。 高级语言:Fortran、Pascal、C语言等。不依赖具体机器,移植性好,对用户要求低,易使用 阅读全文
posted @ 2018-01-17 02:30 AlvinZH 阅读(4099) 评论(0) 推荐(1)