编译原理 文法直观概念形式定义.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.3 程序语言的语法描述 2.3.1 上下文无关文法 2.3.2 语法分析树与二义性 2.3.3 形式语言鸟瞰 2.3.1 上下文无关文法 一、文法引入 二、符号和符号串 三、文法的直观概念 四、文法和语言的形式定义 三、文法的直观概念 采用 EBNF 来表示英语中一种句子的构成规则 : 句子 ∷ = 主语 谓语 主语 ∷ = 冠词 [ 形容词〉 ] 名词 谓语 ∷ = [ 助动词 ] 动词 冠词 名词 名词 ∷ = wolf | goat | rabbit | tiger 冠词 ∷ = the |a |an 形容词 ∷ = gray | red 助动词 ∷ = will 动词 ∷ = eat | like 补充例 ? 用规则产生句子 . ( 推导 ? ) ? 使用一条规则 , 把 ? 左边的部分替换成右边的部分。 ? 用规则判别句子的合法性 [ ] :方括号 表示其内的成 分为任选项 判断一个符号串是否为语法上正确的 句子 ? 运用规则 , 把左边的部分替换成右边的部分 , 如果可以推导出 ( 产生 ) 该符号串 , 则该符号 串是正确的句子 ? 可以图示化表示这种推导 , 得到语法分析树 ? 参考 p27 做练习 : 画出 尠 The gray wolf will eat the goat . 的语法树 有关文法概念的给出 句子 ∷ = 主语 谓语 主语 ∷ = 冠词 [ 形容词〉 ] 名词 名词 ∷ = wolf | goat | rabbit | tiger 产生式 产生式 产生式 非终结符 终结符 开始符号 ( 识别符号 ) 文法 G : 一组非终结符 , 一组终结符 , 一个开始符号 , 一组产生式 终结符 ? 终结符是组成语言的基本符号 , 不可再分 割,不能由其它文法符号定义 ? 词法规则 终结符是字母 , 数字 , 其他合法符号 ? 语法规则 从语法分析的角度 , 终结符指单词符号 , 基本字 , 标识符 , 常数 , 算符 , 界符等 非终结符 ? 非终结符 : 语法成分 , 语法短语,语法单位, 语法变量,语法范畴,语法实体 ? 非终结符可由其它文法符号定义。不是用 户自己写的 ? 非终结符给语言强加了一种层次结构 ? 每个非终结符表示一定符号串的集合 开始符号 ( 识别符号 ) ? 开始符号是我们最终感兴趣的语法范畴 ? 是文法最终要定义 的语法结构 四、文法和语言的形式定义 1. 产生式 ( 规则 ) 2. 文法 3. 直接推导 , 直接归约 4. 推导 , 归约 5. 句型 , 句子 6. 语言 7. 文法等价 ( 补充 ) 8. 最左推导 , 最右推导 1. 文法 (a) 文法的形式定义 : G = (V T , V N , P , S) V N ∩V T =φ V : 文法符号的集合 ( 文法 G 的字母表 ) V = V N ∪ V T ( 补充 ) ? 语言 L ? V T * 终结符号集合 非终结符号集合 产生式集合 开始符号 2. 产生式 ? 重写规则、产生式 、生成式 a production rule 、 a rewriting rule ? 有序对 (α , β) ? α → β ( 书上 A→α) ? α ∷ = β ? α : 规则的左部 α ∈ V + ? β : 规则的右部 β ∈ V * 产生式可以递归 ? 产生式左部的符号可以在右部出现 . ? 例 : 表达式的定义 E→i E→E+E E→E*E E→(E) p28 (b) 文法 举例 文法 G = (V

文档评论(0)

ailuojue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档