- 1、本文档共84页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章_前后文无关文法.ppt
1 1 【主要内容】 【重点与难点】 文法与语言的概念 文法与语言之间的相互定义及描述 句型分析方法 【学习目标】 本章目的是为语言的语法描述寻求工具 (文法) 理解文法与语言的相关概念及术语 掌握使用文法对源程序给出精确无二义(严谨、简洁、易读)的语法描述 熟悉根据文法的特点来指导语法分析的过程 一、引言 二、文法与语言的定义 例2:L={A~Z,a~z} D={0~9}求L∪D, LD, L4 , L(L∪D)* , D+ 1.L∪D={A~Z,a~z ,0~9} 2.LD是由所有用一个字母后跟一个数字 组成的符号串所构成的集合。 3.L4是由所有的四个字母的符号串构成的集合。 4.L(L∪D)* 是由所有字母或以字母打头后跟字母或数字组成的符号串所构成的集合. 5.D+是由所有的长度大于等于1的数字串所构成的集合. (1)规则(产生式) 是形如α→β或α∷=β的(α,β)有序对,其中α是字母表V的正闭包V+中的一个符号,β是V*中的一个符号。α称为规则的左部,β称为规则的右部。 (2)终结符与非终结符 一般用小写和大写字母分别表示终结符和非终结符。用VN,VT分别表示终结符集合和非终结符集合。 文法G定义为四元组(VN,VT,P,S )其中VN为非终结符号(或语法实体,或变量)集;VT为终结符号集;P为产生式(也称规则)的集合; VN,VT和P是非空有穷集。 S称作识别符号或开始符号,它是一个非终结符,至少要在一条产生式中作为左部出现。 VN和VT不含公共的元素,即VN ∩ VT = φ,通常用V表示VN∪ VT ,V称为文法G的字母表或字汇表。 例1:文法G=(VN,VT,P,S), 其中VN={S},VT={0,1}, P={S→0S1,S→01}。 例3:文法G=(VN,VT,P,S)其中 VN ={标识符,字母,数字} VT ={a,b,c,…,x,y,z,0,1,…,9} P ={〈标识符〉→〈字母〉 〈标识符〉→〈标识符〉〈字母〉 〈标识符〉→〈标识符〉〈数字〉 〈字母〉→a 〈字母〉→b … 〈字母〉→z 〈数字〉→0 〈数字〉→1 … 〈数字〉→9} S =〈标识符〉 这里,使用尖括号〈和〉括起非终结符。 注意: 1)很多时候,不用将文法G的四元组显式地表示出来,而只将产生式写出。 2)另外也有一种习惯写法,将G写成G[S],其中S是识别符号 例1表示的方法还可以写成: G:S→0S1 S→01 或G[S]:S→0S1 S→01 3)有时,为书写简洁,常把相同左部的产生式,形如: A→α1 A→α2 … A→αn 缩写为: A→α1|α2|…|αn 总结出:一个文法的有如下几种写法 ① G=({S,A},{a,b},P,S) 其中P:S→aAb A→ab A→aAb A→ε ② G:S→aAb A→ab A→aAb A→ε ③ G[S]: A→ab A→aAb A→ε S →aAb ④ G[S]: A→ab |aAb |ε S→aAb 设G[S]=(VN,VT,P,S)是一文法,α和β是G的字汇表V上的符号串, β是α的直接推导(或α直接产生β ),当且仅当α,β可分别写成:α=νUδ及β=νηδ,其中ν、δ∈V*且U→η∈P。通常记为: α β或νUδ νηδ 如果存在直接推导的序列:α=ν0 ν1 ν2… νn=β,(n≥0)则称α推导出 (产生) β(推导长度为n),或称β归约到α。当n≥0时记作α β。当n≥1时,记作α β。 设G[S] 是一文法,如果符号串α是从识别符号S推导出来的,即有S α,则称α是文法G[S]的句型。若α仅由终结符号组成,即S α,且α ∈VT*,则称α为G[S]的句子。 设G[S] 是一文法,把G产生的全部句子所组成的集合称为G产生的语言,且记为L(G)即L(G)={w|S w,且w∈VT*},由于L(G)包含于 VT*,故L(G)是定义于字母表VT上的。 S aSBE aaSBEBE aaaBEBEBE aaaBBEEBE aaaBBEBEE aaaBBBEEE aaabBBEEE aaabbBEEE aaa
文档评论(0)