语法图是语法的图形描述,是一种常用的描述程序设计语言的图示方法。
简介编写一个高级语言源程序,其是否合法,完全取决于它是否遵守约定的语法规则。通常,表示语法规则的形式有两种方法:巴科斯一诺尔范式即BNF( Backus- Naur form)和语法图。BNF第一次在1960年用来描述 ALGOL60的语法规则,这种方法的优点是清晰、严谨,在语言形式化描述编译程序自动生成等研究领域中是一种最为有效的工具。语法图最早盛行于描述PASCAL的语法规则,这种方法的长处是直观形象,在语言教学中是一个得力的工具。1
语法图是用来描述语法规则的一种形式化方法。它的优点是形象、直观,易于掌握。在语法图中,用圆圈及两头圆的长方形表示终结符。例如基本符号、保留字等。用长方形表示非终结符。即需要由另外的语法图说明的符号。用箭头表示语法单元的连接次序。2
特点(1)每一个语法图表示一个语法规则。
(2)圆边框或圆形框内书写的是“终结符号”,即它们不需要进一步定义,在程序中的相应位置上直接写上这些“终结符号”即可。
(3)矩形框内所写的则是“非终结符号”,即它们还需要进一步定义。
(4)用语法图定义语法规则的过程类似于“自顶向下,逐步细化”的过程,直到所有的语法实体均由“终结符号”定义为止。
(5)语法图只是规定了程序中各部分应当书写的内容和次序,而不是规定程序执行的步骤。请读者注意,不要将语法图和流程图混淆起来,两者是不同的概念。3
表示方法通常用圆圈表示终极符号,用方框表示非终极符号,用有向弧表示走向,图上的一条通路表示语法结构的一种正确定义方式。4
语法图的基本成分是圆角框或圆框、矩形框、连接线与指向箭头。凡出现在圆角框或圆框中的都是必须照原样写的保留字或符号,而矩形框中的成分则是可另行描述的一个语法成分。从左方开始,沿箭头标明的任一路径前进,直至从右方出来,每一种可能的路径都表示一种合法的语法成分。5
本词条内容贡献者为:
徐恒山 - 讲师 - 西北农林科技大学