- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 2.6 有关文法实用中的一些说明 有关文法的实用限制 在实用中应限制文法中含有如下规则: (1)有害规则 文法中含形如U→U的产生式。 它对描述语言没有必要,且会引起文法的二义性。 (2)多余规则 文法中任何一个句子的推导都用不到的规则。 (3)无用规则 文法中含形如U→V的产生式,即单产生式。 为保证文法G的任一非终结符A在句子推导中出现,必须满足如下两个条件: (1)A必须在某句型中出现,?A?。 (2)必须能够从A推导出终结符号串t。 * * 2.6 有关文法实用中的一些说明 2. 有关文法的二义性 (1)无二义性文法 如果一个文法所产生的每一句子都仅有一棵语法树,则称此文法为无二义性的。 (2)二义性的判定 1962—1963年 Floyd, Contor和 Chomsky证明:上下文无关文法是否具有二义性是不可判定的。 但有些特殊的2型文法[例如LL(1)、LR(0)、 LR(1)等文法]是无二义性的。 一个文法兼有左递归和右递归是导致二义性的常见原因。 Eg. 文法G[E] E→E+E | E*E |(E) | i 是一个二义性文法。 * * 2. 有关文法的二义性 (3)解决二义性 可将二义性文法G 改写为等价的无二义性文法G’ 。 Eg. 上述文法 G[E] 可改写为 G’ [E]: E → E+T | T T → T*F | F F → (E) | i 则 G’ [E] 是无二义性的。 * * 2.6 有关文法实用中的一些说明 有关文法的化简和改造 包括以下几项工作: (1)无用符号和无用产生式的删除。 (2) ?-产生式的消除。 (3)单产生式的消除。 (4)左递归的消除。 * * 2.7 扩展的BNF 前面叙述的表示语规则的形式是Backus和Naur在ALGOL60报告中引入的,称为Backus—Naur Form,(也称Backus—Normal Form),简化为BNF。 为了增加可续性和避免递归形式,引入了扩展的BNF,改为EBNF。 * * 2.7 扩展的BNF EBNF表示的符号说明如下。 ‘ ’:用左右尖括号括起来的中文字表示语法构造成分,或称语法单位,为非终结符。 ‘∷=’:该符号的左部由右部定义,可读作‘定义为’。 ‘|’:表示‘或’,为左部可由多个右部定义。 ‘{ }’:表示花括号内的语法成分可以重复。在不加上下界时可重复0到任意次数,有上下界时为可重复次数的限制。 ‘[ ]’:表示方括号内的成分为任选项。 ‘( )’:表示圆括号内的成分优先。 例:PL/0语言文法的EBNF表示为(例2_6_1) * * 例:PL/0语言文法的EBNF表示为:程序∷=分程序 分程序∷=[常量说明部分][变量说明部分] [过程说明部分]语句 常量说明部分∷=CONST常量定义{,常量定义}; 常量定义∷=标识符=无符号整数 无符号整数∷=数字{数字} * * PL/0语言文法的EBNF表示 变量说明部分∷=VAR标识符{,标识符}; 标识符∷=字母{字母|数字} 过程说明部分∷=过程首部分程序{;过程说明部分}; 过程首部∷=PROCEDURE标识符; 语句∷=赋值语句|条件语句|当型循环语句 |过程调用语句|读语句|写语句 |复合语句|空 * * 赋值语句∷=标识符:=表达式 复合语句∷=BEGIN语句{;语句}END 条件∷=表达式关系运算符表达式|ODD表达式 表达式∷=[+|-]项{加法运算符项} 项∷=因子{乘法运算符因子} 因子∷=标识符|无符号整数|‘(’表达式‘)’ 加法运算符∷=+|- 乘法运算符∷=*|/ * * 关系运算符∷==|#||=||= 条件语句∷=IF条件THEN语句 过程调用语句∷=CALL标识符 当型循环语句∷=WHILE条件DO语句 读语句∷READ‘(’标识符{,标识符}‘)’ 写语句∷=WRITE‘(’表达式{,表达式}‘)’ 字母∷=a|b|…|X|Y|Z 数字∷=0|1|2|…|8|9 * * 作业 2-1 设英文小写字母集合L={a,b, …, z},数字集合D={0,1, …,9},试问L(L∪D)*中长度不大于3的符号串共有多少个?请列出其中5个有代表性的符号串。 2-2 文法G=({U,V,S},{a,b,c},P,S),其中产生式集合P为: S?Uc|aV U?ab V?bc
您可能关注的文档
- 刘新昱《计算机信息技术教程》第2章2.5 常用输出设备.ppt
- 刘新昱《计算机信息技术教程》第2章2.6 外存储器.ppt
- 刘新昱《计算机信息技术教程》第2章2.7 常用医学信息采集与处理设备.ppt
- 刘新昱《计算机信息技术教程》第3章 复习重点.ppt
- 刘新昱《计算机信息技术教程》第3章3.1 软件概述.ppt
- 刘新昱《计算机信息技术教程》第3章3.2 操作系统.ppt
- 刘新昱《计算机信息技术教程》第3章3.3 算法和程序设计.ppt
- 刘新昱《计算机信息技术教程》第3章3.4 常用应用软件.ppt
- 刘新昱《计算机信息技术教程》第4章4.1 计算机网络基础.ppt
- 刘新昱《计算机信息技术教程》第4章4.2 计算机局域网.ppt
最近下载
- 四川超高层商务楼脚手架专项施工方案(三排落地式脚手架).doc VIP
- NexION1000-2000系列简易操作指南.doc VIP
- 领导力测试附有答案.docx
- 2025年时事政治热点题库及完整答案(历年真题).docx VIP
- HOLLiAS MACS V6.5.2用户操作手册(火电版).pdf
- 肿瘤专科护士理论知识考试题库600题(含答案).docx
- 第17课:第二次世界大战与战后国际秩序的形成高一历史下学期统编版(2019)必修中外历史纲要下.pptx
- 广东自考09235设计原理重点知识点汇总速记宝典.docx
- (市质检二检)莆田市2025届高中毕业班第二次教学质量检测生物试卷(含答案).docx
- 草方格沙障横向铺草机构及装置设计.doc
文档评论(0)