1计算机科学与技术学院第二章 PL/0编译程序的实现2计算机科学与技术学院2.1 PL/0语言描述2.1.1 PL/0语言的语法描述图v它由世界著名计算机科学家 N.Wirth编写v它是 PASCAL语言的子集,功能简单,结构清晰,可读性强,具备了一般高级语言的必备部分v它充分体现一个高级语言编译程序实现的基本方法和技术v它的目标程序为假想栈式计算机的汇编语言,与具体计算机无关Niklaus Wirth 3计算机科学与技术学院v它的编译程序和目标程序的解释执行程序可用 Pascal,C或其它语言书写,因此 PL/0语言可在配备相应书写语言的任何机器上实现v用语法图描述语法规则的优点是直观、易读v在图 2.1的语法图中用椭圆和圆圈中的英文字或字符表示终结符,用长方形内的中文字表示非终结符v终结符: 构成语言文法的单词,是语法成分的最小单位v通常称第一个非终结符为文法的 开始符号4计算机科学与技术学院程序语法描述图 5计算机科学与技术学院分程序语法描述图 6计算机科学与技术学院语句语法描述图 7计算机科学与技术学院条件语法描述图 8计算机科学与技术学院表达式语法描述图 9计算机科学与技术学院图 2.1(f) 项语法描述图 10计算机科学与技术学院因子语法描述图