1绪论 1
1.1重点与难点 1
1.1.1程序设计语言与编译程序 1
1.1.2编译程序的逻辑结构 1
1.1.3编译程序的组织 1
目录 1
1.2例题精选 2
1.3习题 2
2.1.1文法和语言的表示 3
2.1.2文法和语言的定义 3
2前后文无关文法和语言 3
2.1重点与难点 3
2.1.3句型的分析 4
2.1.4文法的化简与改造 5
2.1.5文法和语言的Chomsky分类 5
2.2例题精选 6
2.3习题 7
3.1.2正规文法 11
3.1.1词法分析程序的功能 11
3词法分析及词法分析程序 11
3.1重点与难点 11
3.1.3状态转换图 12
3.1.4有限自动机(FA) 13
3.1.5正规式 16
3.1.6从正规文法到正规式 17
3.1.7由正规式到NFA 18
3.1.8扫描器的自动生成 19
3.2例题精选 21
3.3习题 33
4.1.1语法分析程序的功能 39
4.1.2自顶向下的语法分析 39
4语法分析及语法分析程序 39
4.1重点与难点 39
4.1.3自底向上的语法分析 43
4.2例题精选 50
4.3习题 62
5语法制导翻译及中间代码生成 71
5.1重点与难点 71
5.1.1语法制导翻译 71
5.1.2属性文法和属性翻译文法 71
5.1.3常见中间语言 73
5.1.4常见程序结构的翻译 74
5.1.5语法分析程序的自动生成工具YACC 80
5.2例题精选 84
5.3习题 91
6符号表 95
6.1重点与难点 95
6.1.1符号表的组织 95
6.1.2分程序结构语言符号表的建立 96
6.1.3非分程序结构语言符号表的建立 98
6.2例题精选 99
6.3习题 102
7运行时的存储组织与分配 104
7.1重点与难点 104
7.1.1存储组织 104
7.1.2运行时的存储分配策略 105
7.2例题精选 107
7.3习题 107
8.1.1语法制导翻译阶段的优化 110
8.1.2线性窥孔优化 110
8代码优化 110
8.1重点与难点 110
8.1.3基于结构信息的优化 111
8.2例题精选 119
8.3习题 126
附录A 部分高等院校研究生入学考试“编译原理”试题及模拟题 131
12002年西北工业大学硕士研究生入学考试试题 131
22001年西北工业大学硕士研究生入学考试试题 132
32000年清华大学硕士研究生入学考试试题 133
42000年北京航空航天大学硕士研究生入学考试试题 136
62001年国防科技大学硕士研究生入学考试试题 138
52000年哈尔滨工业大学硕士研究生入学考试试题 138
72000年上海交通大学硕士研究生入学考试试题 140
82000年北京邮电大学硕士研究生入学考试试题 141
92000年中国科学院软件研究所硕士研究生入学考试试题 142
101999年武汉大学硕士研究生入学考试试题 144
11硕士研究生入学考试模拟试题(一) 144
参考答案 145
12硕士研究生入学考试模拟试题(二) 148
参考答案 150
附录B 各章习题参考答案 152
参考文献 220