- 1、本文档共83页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理 第三章 文法和语言课件
*;课前思考;学习目标;学习指南;难重点;知识结构;引言和预备知识;语法
任何语言程序都可以看成是一定字符集(字母表)上的字符串
语法使得这串字符形成一个形式上正确的程序
语法=词法规则+语法规则
例如:0.5*x1+c
0.5、x1、c、*、+是语言的单词符号
0.5*x1+c是语言的语法单位;词法
单词符号
语言中具有独立意义的最基本结构
词法规则
词法规则规定了字母表中哪些字符串是单词符号
单词符号一般包括:常数、标识符、基本字、算符、界限符等
我们用正规式和有限自动机理论来描述词法结构和进行词法分析;语法
单词符号
语法单位
表达式、子句、语句、函数、过程、程序
语法规则
规定了如何从单词符号来形成语法单位
现在多数程序语言使用上下文无关文法来描述语法规则
语言的词法规则和语法规则定义了程序的形式结构,是判断输入字符串是否构成一个形式上正确的程序的依据;例,对于一个PASCAL程序来说,一个上下文无关文法可以定义
A:=B+C 是合乎语法的,
而A:=B+ 是不合乎语法的。;语义
对于一个语言来说,不仅要给出它的词法、语法规则,而且要定义它的单词符号和语法单位的意义
离开语义,语言只是一堆符号的集合
各种语言中有形式上完全相同的语法单位,含义却不尽相同
对某种语言,可以定义一个程序的意义的一组规则称为语义规则
目前,大多数编译程序使用基于属性文法的语法制导翻译方法来分析语义;对于高级程序设计语言及其编译程序来说,语言的语法定义是很重要的。本章主要介绍语法结构的形式描述问题,编译原理的主要内容也可以归纳为应用形式语言理论,并将它贯穿于词法分析和语法分析两个阶段;*;*;*;句子:字母表上符合某种规则构成的串
语言:字母表上句子的集合
注:约定用a, b, c…表示符号;用?, ?, ?…表示符号串;用A, B, C表示其集合;*;符号串的方幂:设?是符号串,把?自身连接n次得到符号串?,即?=???…??,称为符号串?的方幂,写作?=?n。
符号串集合:若集合A中的一切元素都是某字母表上的符号串,则称A为字母表上的符号串集合。;两个符号串集合A和B的乘积(连接): AB={??|? A且? B}
注:1)串集的自身乘积称作串集的方幂
2)A0={?}
字母表V的n次方幂是字母表V上所有长度为n的串集;*;*;比如:“我是大学生。”是汉语的一个句子
汉语句子可以是由主语后随谓语而成,构成谓语的是动词和直接宾语
句子::=主语谓语
主语::=代词|名词
代词::= 我 | 你 | 他
名词::= 王明 | 大学生 | 工人 | 英语
谓语::=动词直接宾语
动词::= 是 | 学习
直接宾语::=代词|名词;*;*;*;*;*;*;*;*;*;*;*;*;对于例3.1的文法G:S→0S1,S→01 ,可以给出直接推导的一些例子如下:
v=0S1,w=0011,直接推导:0S1 ? 0011,使用的规则:S→01,这里?=0,?=1。
v=S,w=0S1,直接推导:S ? 0S1,使用的规则:S→0S1,这里?=?,?=?
v=0S1,w=00S11,直接推导:0S1 ? 00S11,使用的规则:S→0S1,这里?=0,?=1。;对于例3.2的文法G,直接推导的例子有:
v=标识符,w=标识符 字母 ,直接推导:标识符 ? 标识符 字母 ,使用的规则:标识符 →标识符 字母 ,这里γ=δ=ε
v=标识符 字母 数字 ,w=字母 字母 数字 ,直接推导:标识符 字母 数字 ? 字母 字母 数字 ,使用的规则:标识符 →字母 。这里γ=ε,δ? 字母 数字 。
v=abc数字 ,w=abc5,直接推导:abc数字 ? abc5, 使用的规则:数字 →5,这里γ=abc,δ=ε;*;对例3.1的文法,存在直接推导序列v=0S1 ? 00S11 ? 000S111 ?w,
即0S1 也可记作0S1 对例3.2的文法,存在直接推导序列v=标识符 ? 标识符数字 ? 字母数字 ? x数字 ? x1=w,
即标识符 x1,也可记作标识符 x1;*;*;*;*;*;*;0型文法(短语文法)的能力相当于图灵机,可以表征任何递归可枚举集,而且任何0型语言都是递归可枚举的
;1型文法(上下文有关文法):设G=(VN,VT,P,S)为一文法,若P中的每一个产生式?→?,都有|?|≥|?|, 仅仅 S→?除外
1型文法也可描述为?1A?2→ ?1??2,其中?1、 ?2和?都在V*中,?≠?,A在VN中。即只有A出现在?1和?2的上下文中时,才允许?取代A。;*;2型文法(上下文无关文法):
您可能关注的文档
- 第十五讲:文学鉴赏课件.ppt
- 第十八章 侵犯公民人身权利、民主课件.ppt
- 第十八章社会控制课件.ppt
- 第十五章 心理健康教育课件.ppt
- 第十六章 性格课件.ppt
- 第十六章 能力课件.ppt
- 第十六讲:谢灵运传论课件.ppt
- 第十六讲:植物生长抑制激素课件.ppt
- 第十六课词语讲解1课件.ppt
- 第十四章 碳族元素课件.ppt
- 2023-2024学年北京市海淀区七年级(上)期末英语试卷.doc
- 利用PowerPoint教授专科历史课程-历史学教授.pptx
- 专题7.10 平行线的证明章末九大题型总结(培优篇)(北师大版)(原卷版).pdf
- 利用PowerPoint演示设计理论与实践-设计专家角色.pptx
- 2024年信息服务合同(31篇).pdf
- 高等数学(第五版)课件 6.1.3定积分的几何意义.pptx
- 利用创意动画提升演示效果-设计师.pptx
- 专题7.10 期末复习之解答压轴题专项训练(北师大版)(解析版).pdf
- 2021-2022年高二学业水平测试训练地理试题.pdf
- 利用圣诞节故事进行教学-为小学教师准备的演示文稿.pptx
文档评论(0)