【课前思考】 在第2章我们已经用T型图表示PL/0语言编译程序的功能,用T型图表示一个编译程序的实现功能,容易弄清源语言、目标语言和书写语言3者之间的关系。本章将介绍基于LALR(1)的语法分析程序的生成器YACC和基于有限自动机理论的词法分析程序的生成器LEX。因此,建议学员学习本章前复习第3章和第7章的内容。 【学习目标】 ◇ 掌握编译程序的书写语言与T型图 ◇ 学会用编译程序的自展技术实现一个编译程序 ◇ 了解什么是编译程序的移植 ◇ 弄清什么是交叉编译 ◇ 初步学会使用编译程序的构造工具即: 基于LALR(1)的语法分析程序的生成器YACC和基于有限自动机理论的词法分析程序的生成器LEX构造编译程序的思想和步骤。 【学习指南】 本章的学习内容主要是对编译程序构造的几种不同途径,到底采用那种途径,要根据实现的具体环境决定,学员学习时要掌握如何更好地利用已经有的软件资源,能高质量的完成一个编译程序的开发。 【难 重 点】 重点: ◇ 学会用T型图描述实现编译程序的自展技术 ◇ 弄清交叉编译与编译程序移植的概念 ◇ 理解编译程序的构造工具YACC和LEX的实现原理 ◇ 初步学会YACC和LEX的使用方法 难点:用T型图描述实现编译程序的自展技术时,往往对多层T型图的结构理解不清,其原因是没有把一个单层T型图看做是一个程序,而这个程序的功能把一种语言翻译成另一种语言。 【知 识 点】 ![]() |