其他分享
首页 > 其他分享> > 编译技术基础—(二)高级语言及其语法描述

编译技术基础—(二)高级语言及其语法描述

作者:互联网

语法

语法是指一组可以形成和产生合式程序的规则,包括词法规则和语法规则两部分。

  1. 词法规则,指单词符号的形成规则
  2. 语法规则,指语法单位的形成规则
语义

一组可以定义程序意义的规则,这些规则称为语义规则

文法的分类
  1. 0型文法:也称为短语文法,指的是P中每个产生式α→β的左部α中至少含有一个非终结符的文法。0型文法描述的语言称为0型语言,它是一种递归可枚举语言;反之,递归可枚举集必定是0型语言,并且可由图灵机进行识别。
  2. 1型文法:也称上下文有关文法,是指在0型文法的基础上,若P中每个产生式α→β还满足|α|≤|β|(S→ε除外)的文法。对终结符进行替换时必须考虑上下文环境,而且一般不允许替换成空串ε。1型文法描述的语言称为1型语言上下文有关语言,这种语言可由限行界限自动机来识别。
  3. 2型文法:也称上下文无关文法,是指P中的每个产生式形如A→β的文法,其中A∈VN,β∈(VT∪VN*)。对非终结符进行替换时不必考虑上下文。它所描述的语言称为2型语言或上下文无关语言,这种语言可以由下推自动机来识别。
  4. 3型文法:也称为正规文法,是指P中的每个产生式形如A→αB或A→α的文法,其中A、B∈VN,α∈VT*。这种形式的3型文法也称为右线性文法。若P中每个产生式形如A→Bα或A→α,则称这种形式的3型文法为左线性文法。它所描述的语言称为3型语言正规语言,这种语言可以由有限自动机来识别。

课后习题

(1)简述标识符和名字的定义与区别。

名字都是用标识符来表示的,虽然名字和标识符在形式上往往难于区分,但二者是有本质区别的。
标识符是一个没有意义的字符序列,而名字却有明确的意义和属性。

标签:文法,型文法,语言,语法,编译,规则,上下文,描述
来源: https://blog.csdn.net/Can_Yue_/article/details/110749476