【课前思考】
  在第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型图看做是一个程序,而这个程序的功能把一种语言翻译成另一种语言。
【知 识 点】