ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

4.文法和语言总结与梳理

2019-09-26 16:04:14  阅读:235  来源: 互联网

标签:总结 文法 型文法 推导 规则 上下文 梳理 符号串


1.梳理第二章的内容,写一篇理解与总结。

  第二章首先介绍了文法的相关概念以及概念的推导过程,接着介绍了符号和符号串,其中字母表的定义为元素非空有穷集合,字符串为由字母表中的符号组成的任何有穷序列。接着介绍字符串的一些运算,例如:符号串的头尾,固有头和固有尾;符号串的连接;符号串的方幂;符号串集合。文法和语言的形式定义:文法G定义为四元组(VN,VT,P,S),其中VN为非终结符,VT为终结符,P为规则(a→ß)的集合。S为识别符或开始符,不是终结符,至少有一条出现在左边。

  文法的类型有四种:0型文法、I型文法或上下文有关文法、2型文法或上下文无关文法、3型文法或正规文法,四种文法限制越来越严格,所以正规文法都是上下文无关的,每一种上下文无关文法都是上下文有关的。描述上下文无关文法的句型推导的直观工具,即语法树,文法G =(VN,VT,P,S),对于G的任何句型都能构造与之关联的语法树。文法的推导过程分为:最左推导和最右推导,最右推导也称为规范推导。

  文法的二义:某个句子对应有两颗不同的语法树。

  有关文法的实用限制:在实际使用中,限制文法中不能有有害规则和多余规则,有害规则,对描述语言没有必要的,容易引起文法的二义性,多余规则是指文法中那些连一个句子推导都用不到的规则,这一类规则在文法的推导中根本不可能用到它。


 

2. 尝试写出PL/0 语言的文法。(或者你认为比较好的语言规则)

整数:n→1|2|3|4|5|6|7|8|9|

标识符:i→<字母>  <字母>|<数字>

表达式:e→ [+|-]<项>{<加减运算符><项>}

条件语句:<条件语句>→ if <条件>  then<执行语句>

赋值语句:<赋值语句>→ <标识符>:=<表达式>

复合语句:<复合语句> → begin<语句>{;<语句>}end

函数:<函数>→<主函数><其他函数>|<主函数>

程序:不会做(查无资料)

...


 

 

标签:总结,文法,型文法,推导,规则,上下文,梳理,符号串
来源: https://www.cnblogs.com/lingcode/p/11592112.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有