- 梳理第二章的内容,写一篇理解与总结。
第二章为文法与语言,它介绍了程序设计语言的文法和语言构成。本章重点介绍了语言的语法结构的形式描述、语法树以及文法的二义性,主要内容:文法的直观概念、符号符号串、文法和语言的形式定义、问答的类型、上下文无关文法及其语法树、句型分析以及文法的实际应用。
总结:文法是一个四元组G=(VN,VT,P,S),每个语言都有文法,简称语法,每个语言都有语法树,至少有两个语法树的语法,成为文法的二义性。
2、尝试写出PL/0 语言的文法。(或者你认为比较好的语言规则)
整数n:::= 1|2|3|.....
标识符i:::=<标识符><字母>|<标识符>|<标识符><数字>
表达式e:::=[+|-]<e>
条件语句:::=<表达式><关系运算符><表达式>|odd<表达式>
赋值语句:::=<id>:=<表达式>
复合语句:::=begin<语句>{;<语句>}end
函数:::=[<常量说明部分>][<变量说明部分>][<过程说明部分>]<语句>
程序:::=<分程序>