图 13.1 编译程序的T型图
  如果一个编译程序的源语言是X,目标语言是Y,书写语言是Z,我们把该编译程序记作,那么用T型图表示如图13.2。
图 13.2 的T型图
  设计一个编译程序时必须考虑上述三个方面语言的性质,因为它们对编译程序的结构和具体实现途径都有很大影响,源语言的设计和定义往往影响到编译程序的结构。目标语言和目标机的性质决定着源语言到目标语言的映射和代码生成的策略,而实现语言的性质和实现环境及开发工具的应用对编译程序的可读性,可移植性和可维护性及可扩充性等有很重要的关系。
  如果一个编译程序是用高级语言或编译程序的构造工具开发的,那么它的可读性、可移植性和可维护性等将会大大提高。而用汇编语言实现,这些性能都会得到相反的结论。