解释程序也称为解释器,它或者直接解释执行源程序,或者将源程序翻译成某种中间代码后再加以执行:而编译程序(编译器)则是将源程序翻译成目标语言程序,然后在计算机上运行目标程序。这两种语言处理程序的根本区别是:在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程:而在解释方式下,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。简单来说,在解释方式下,翻译源程序时不生成独立的目标程序,而编译器则将源程序翻译成独立保存的目标程序.
程序语言中的词(符号)的构成规则可由正规式描述,词法分析的基本任务就是识别出源程序中的每个词。语法分析是分析语句及程序的结构是否符合语言定义的规范,对于语法正确的语句,语义分析是判断语句的含义是否正确,因此判断语句的形式是否正确是语法分析阶段的工作。
在词法分析阶段,其任务是从左到右逐个字符地读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词(也称单词符号或符号)。这里所谓的单词是指逻辑上紧密相连的一组字符,这些字符组合在一起才表示某一含义。