文摘
英文文摘
声明
第一章 绪论
1.1引言
1.2本课题研究的目的和意义
1.3编译系统及编译过程概述
1.3.1编译程序的阶段
1.3.2编译程序的分组与分遍
1.4本系统的设计思想
1.4.1中间步骤的存贮
1.4.2程序清晰可读,方便以后扩充
1.5本系统的主要内容
1.5.1整体设计
1.5.2系统的类设计
1.5.3系统的输出设计
1.5.4软件配置
第二章 编译原理基础知识
2.1产生式文法的化简和改造
2.1.1文法的有关概念
2.1.2文法类的设计
2.1.3文法的化简与改造
2.1.4无用符号和无用产生式的删除算法
2.1.5ε产生式的消除
2.1.6单产生式的消除
2.2自动机演示及确定化
2.2.1自动机的基本概念
2.2.2自动机的图形化表示
2.2.3非确定自动机的确定化
2.2.4 DFA的最小化
第三章 词法分析
3.1有关词法分析器的基本概念
3.1.1词法分析器的任务
3.1.2单词的分类与识别
3.1.3单词的机内表示
3.2词法分析器的设计
3.3词法分析器的功能实现
第四章 语法分析
4.1语法分析的基本概念
4.1.1自顶向下分析
4.1.2自底向上分析
4.1.3首符号集合、后继符号集合与选择集合的引入
4.1.4首符号集合、后继符号集合与选择集合的定义
4.1.3与文法Select集合有关的算法
4.2 LL(1)分析
4.2.1 LL(1)分析过程
4.2.2 LL(1)分析表的构造
4.2.3 LL(1)控制程序的构造
4.2.4LL(1)分析法的实现
4.3简单优先分析
4.3.1简单优先分析过程
4.3.2简单优先矩阵的构造
4.3.3简单优先控制程序的构造
4.3.4简单优先分析法的实现
4.4算符优先分析
4.4.1算符文法的优先关系与算符优先文法
4.4.2算符优先矩阵的构造
4.4.3算符优先文法控制程序的构造
4.5 LR分析法简介
4.5.1LR分析概述
4.5.2LR分析器工作过程
4.6LR(0)分析法
4.6.1构造识别规范句型的DFA
4.6.2构造LR(0)分析表
4.6.3构造LR(0)控制程序
4.6.4LR0分析法的实现
4.7SLR(1)分析
4.7.1SLR(1)的冲突解决方法
4.7.2SLR(1)分析表和分析器的构造
4.7.3 SLR(1)分析的实现
4.8 LR(1)分析
4.8.1 LR(1)分析法的引入
4.8.2 LR(1)项目集族的构造
4.8.3从文法的LR(1)项目集族C构造LR(1)分析表
4.8.4 LR(1)分析法的实现
第五章 符号表的组织和管理
5.1符号表的作用和地位
5.2符号表的体系结构
5.2.1符号表的功能
5.2.2符号表的一种体系结构
5.2.3标识符的信息字
5.2.4类型表(TYPEL)
5.2.5数组信息表(AINFL)
5.2.6记录信息表(RINFL)
5.2.7指针信息表(PINFL)
5.2.8过函信息表
5.3符号表的一个示例
5.3.1用于生成符号表的源程序
5.3.2生成的符号表演示图形
5.3.3多维数组的生成顺序
第六章 语法制导翻译及中间代码生成
6.1引言
6.2四元式中间语言简介
6.3语句翻译[1][5]
6.3.1算术表达式的翻译
6.3.2布尔表达式的翻译
6.3.3简单赋值语句的翻译
6.3.4while循环语句的翻译
6.3.5if条件语句翻译
6.3.6复合语句翻译
6.3.7说明文法的翻译
6.4一个编译器前端的实例
6.4.1示例语言的文法定义
6.4.2词法分析器的设计
6.4.3语法及语义分析器的设计
第七章 代码优化与目标代码生成
7.1代码优化简介
7.2局部优化
7.2.1基本块
7.2.2划分基本块的办法
7.2.3基本块的DAG表示
7.3循环优化
7.3.1代码外提
7.3.2强度削弱
7.4目标代码生成
第八章 结论
参考文献
致 谢