编译器是将一种语言翻译为另一种语言的计算机程序。编译器将源程序(sourcelanguage)编写的程序作为输入,而产生用目标语言(targetlanguage)编写的等价程序。编译器是一种相当复杂的程序,其代码的长度可从10000行到1000000行不等。编写甚至读懂这样的一个程序都非易事,大多数的计算机科学家和专业人员也从来没有编写过一个完整的编译器。但是,几乎所有形式的计算均要用到编译器,而且任何一个与计算机打交道的专业人员都应掌握编译器的基本结构和操作。除此之外,计算机应用程序中经常遇到的一个任务就是命令解释程序和界面程序的开发,这比编译器要小,但使用的却是相同的技术。因此,掌握这一技术具有非常大的实际意义。