
编译原理
文章平均质量分 95
啦啦啦
說詤榢
苦而不言,喜而不语。
展开
-
编译原理教程_10 代码优化和目标代码生成
文章原理https://gitee.com/fakerlove/fundamentals-of-compiling文章目录10. 代码优化和目标代码生成10.1 代码优化概念1) 基本概念2) 优化的种类3) 数据流方程10.2 代码优化技术10.2.1 局部优化1) 基本块概述划分基本块基本块划分举例2) 流图3) 基本块的 DAG 表示DAG 扩充四元式的 DAG 表示4) 基本块的优化算法优化算法概述示例构造基本块的 DAG 算法10.2.2 循环优化1) 循环不变运算2) 代码外提3) 强.原创 2021-05-15 19:55:10 · 2808 阅读 · 3 评论 -
编译原理教程_9 运行时存储组织
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录9. 运行时存储组织9.1 概述9.2 静态存储分配9.3 动态存储分配9.3.1 活动记录9.3.2 建造display区的规则9.3.3 运行时的地址计算9. 运行时存储组织9.1 概述运行时的存储组织及管理是目标程序运行时所需要存储空间的组织与管理以及源程序中变量存储空间的分配。静态存储分配在编译阶段由编译程序实现对存储空间的管理,和为源程序中的变量分配存储的方.原创 2021-05-15 19:51:02 · 786 阅读 · 0 评论 -
编译原理教程_8 静态语义分析和中间代码生成
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录8. 静态语义分析和中间代码生成8.1 中间语言8.1.1 概述8.1.2 逆波兰式(后缀式)1) 定义2) 计算方式3) 表达式 => 后缀式8.1.3 图表示法1) 有向无环图2) 举例8.1.4 三地址代码1) 概述2) 四元式3) 三元式4) 间接三元式8.2 赋值语句的翻译8.2.1 赋值语句的属性文法1) 概述2) 语义规则8.2.2 赋值语句的翻译模式8.3 .原创 2021-05-15 19:46:22 · 940 阅读 · 0 评论 -
编译原理教程_7 语法制导的语义计算
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录7. 语法制导的语义计算7.1 基本概念1) 属性文法2)两种属性:1. 综合属性2. 继承属性3) 带标注语法分析树S-属性文法L-属性文法4) 语义计算模型7.2 基于属性文法的语义计算7.2.1 语义子程序1) 作用2) 写法3) 语义值4) 语义栈5) 例题7.2.2 依赖图7.2.3 树遍历树遍历算法树遍历示例7.2.4 一遍扫描抽象语法树AST建立表达式的抽象语法树总.原创 2021-05-15 19:38:55 · 3441 阅读 · 0 评论 -
编译原理教程_6 LR分析法
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录6. LR分析法6.1 简介(1)LR分析法的优缺点(2)分析表的种类(3)LR分析器(4)构造LR分析表(5)关于LR文法6.2 LR(0)文法:star:6.3 规范LR(1)分析法:star:LALR(1)分析:star:6.4 SLR:star:SLR分析法的基本思想SLR(1)分析表的构造例题6.4 LR分析法总结6. LR分析法LR分析:从左到右扫描(L)自底向上.原创 2021-05-15 19:36:40 · 2347 阅读 · 0 评论 -
编译原理教程_5 自底向上分析
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录5. 自底向上分析5.1 移进—规约分析5.2 简单优先分析法5.2.1 基本概念5.2.2 优先关系定义5.2.3 简单优先文法定义5.2.4 简单优先分析法的操作步骤5.2.5 实例5.2.3 缺点5.3 算符优先分析5.4 算符优先分析法的进一步讨论5.4.1 算符优先文法(OPG)5.4.2 构造优先关系矩阵优先关系矩阵构造的自然语言描述5.4.3 算符优先分析算法的实现.原创 2021-05-15 19:24:26 · 678 阅读 · 0 评论 -
编译原理教程_4 语法分析
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录4. 语法分析4.1 概述4.1.1功能4.1.2 基本任务4.1.3 两大类方法4.1.4 理论基础4.1.5 下推自动机PDA1) 概念2) 下推自动机接受的语言4.2 自顶向下分析4.2.1 一般过程4.2.2 特点4.2.3 解决问题1) 消除左递归:star:消除直接左递归消除一般左递归2) 将左递归规则改为右递归规则3) 消除回溯:star:4) 小结4.3 预测分析.原创 2021-05-15 19:22:13 · 410 阅读 · 0 评论 -
编译原理教程_3 词法分析
文章原稿https://gitee.com/fakerlove/fundamentals-of-compiling文章目录3. 词法分析3.1 设计——状态转换图3.1.1 词法分析概述3.1.2 词法分析器的设计1) 词法分析器的结构2) 超前搜索3) 状态转换图4) 状态转换图的实现不含回路的分叉结点含回路的分叉结点终态结点3.2 正规集和正规式3.2.1概念3.2.2 正规式性质3.2.3 正规文法-> 正规式:star:3.2.4 正规式-> 正规文法:star:3.3 有限自动.原创 2021-05-15 19:19:47 · 730 阅读 · 1 评论 -
编译原理教程_2 文法和语言
文章下载地址https://gitee.com/fakerlove/fundamentals-of-compiling文章目录2. 文法和语言2.1 概念2.1.1 语法(文法)1) 词法规则2) 语法规则2.1.2 语义2.1.3 语法规则符号相关概念(1)非终结符(2)终结符(3)开始符号(4)产生式(5)推导(6)归约(7)句型、句子和语言(8)文法规则的递归定义(9) 文法规则的扩充表示(10)元语言符号2.1.4 总结2.2 字母表与符号串(单词符号)2.2.1 概念2.2.2 符号串集合.原创 2021-03-16 10:43:24 · 4649 阅读 · 0 评论 -
编译原理教程_1 引论
文章下载地址-关注我的giteehttps://gitee.com/fakerlove/fundamentals-of-compiling文章目录1. 引论1.1 什么是编译原理1.1.1 常见概念1.1.2 流程1.2 编译器的结构和过程1.2.1 结构1.2.2 编译的五个阶段1) 词法分析2) 语法分析3) 语义分析和中间代码生成4) 代码优化5) 代码生成1.2.3 编译的七大程序1) 表格程序管理程序2) 出错处理程序1.3 编译程序生成1.4 总结1. 引论词法分析 --第三章.原创 2021-03-16 09:56:07 · 446 阅读 · 0 评论