文法和语言09年9月

文法和语言09年9月

ID:39454362

大小:484.00 KB

页数:76页

时间:2019-07-03

文法和语言09年9月_第1页
文法和语言09年9月_第2页
文法和语言09年9月_第3页
文法和语言09年9月_第4页
文法和语言09年9月_第5页
资源描述:

《文法和语言09年9月》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章文法和语言3.1文法的直观理解3.2字符串及其运算3.3文法的形式定义3.4文法的类型3.5递归规则与递归文法3.6规范推导与句柄3.7语法树和二义性3.8语言和文法构造讨论和小结3.9文法的实用限制和变换13.1文法的直观理解在C语言中的赋值语句:a=b+c*60;a+b=c*60;问:1、如何分析哪句是非法的?2、计算机不知道它们是赋值语句,如何确定使用哪一套句型?2语言的基本概念(1)语法——指一组规则,使用这组规则,可以产生一个合适的程序;包括:词法规则(字符组成单词)语法规则(单词组成语法单元)(2)语义——赋予程序意义

2、的规则例如:数据类型匹配、变量是否声明、变量作用域静态语义:合乎语法的程序要遵守的语义规则动态语义:表明程序要做什么3文法:即语言的表述方法把一门语言的句子描述清楚,就把这门语言表述出来了,这种表述方法就称为文法。两种方式:1、有穷语言只需列出句子 2、无穷语言要给出有穷表示法4用一组规则表述语言的例子构成规则:<句>→<主><谓> <主>→<代>

3、<名> <代>→我

4、你

5、他 <名>→王明

6、大学生

7、英语 <谓>→<动><宾> <动>→是

8、学习 <宾>→<代>

9、<名>从上述规则产生句子“我是大学生”的例子:<句>=><主><谓>=><代>

10、<谓>=>我<谓>=>我<动><宾> =>我是<宾>=>我是<名>=>我是大学生“=>”表示:使用一条规则,代替左端的某个符号,产生右端的符号串5文法的直观表示文法由四部分组成:一组非终结符:<句>,<主>,<代>,…… 一组终结符:我,你,他,王明,…… 一个开始符号:<句> 一组产生式:<句>→<主><谓>,……63.2字符串及其运算字母表:元素的非空有穷集合。例:∑={0,1},Α={a,b,c}。V1={a,b,c,…,z}英语小写字母表V2={book,pencil,pen,paper}V2也是字母表(单词表)字母表中的元素称

11、为符号,字母表也称符号集。 程序语言的字母表由字母数字和若干专用符号组成。7符号串:由字母表中的符号组成的任何有穷序列称为该字母表上的符号串。例:字母表∑={0,1},Α={a,b,c}0,00,01,10,……等是∑上的符号串。a,b,c,ab,aaca,……是A上的符号串。不含任何符号的符号串称为空串,用ε表示。符号串长度表示符号串中含有符号的个数。例:

12、abc

13、=3,

14、ε

15、=03.2字符串及其运算8串的连接:符号串x和y的连接xy,是把y的符号写在x的符号之后得到的符号串。例如x=ST,y=abu,则xy=STabu显然εx=xε

16、=x3.2字符串及其运算9设z=xy是符号串,则称x是z的头,y是z的尾。若y非空,则x是z的真(固有)头或真前缀。若x非空,则y是z的真(固有)尾或真后缀。例7:设z=abc,则z的头有ε,a,ab,abc,除了abc,其余都是固有头;10串的方幂:符号串x自身n次连接记作xn,称为串x的方幂。x0=ε(n=0) x1=x(n=1) x2=xx(n=2) … xn=xxn-1=xn-1x(n>0)例:x=AB,x0=ε,x1=AB,x2=ABAB…3.2字符串及其运算11串的集合:由某字母表上的符号串组成的集合称为该字母表上的符号串集

17、合,简称串集合。串集合的乘积:符号串集合A和B的乘积AB定义为:AB={xy

18、x∈A且y∈B},即AB是由A中的串x和B中的串y连接而成的串xy组成的集合。例:设A={a,b},B={c,d},则AB={ac,ad,bc,bd}显然{ε}A=A{ε}=A3.2字符串及其运算12串集合的闭包:符号串集合A的闭包A*定义如下:A*=A0∪A1∪A2∪A3∪……例:设字母表Σ={0,1},(字母表是串集合)则Σ*=Σ0∪Σ1∪Σ2∪……={ε,0,1,00,01,10,11,……}即Σ*表示字母表Σ上符号的任意串的集合。3.2字符串及其运算Σ

19、+=Σ1∪Σ2∪Σ3∪……称为A的正闭包。 显然Σ*=Σ0∪Σ+=Σ+∪Σ0星闭包Σ+=ΣΣ*=Σ*Σ133.3文法的形式定义定义文法G定义为四元组(VN,VT,P,S),其中:VN:非终结符集;VT:终结符集,并且VN∩VT=φ;P:产生式集合;S:开始符号或识别符号;P中产生式形式为:α→β,其中:α∈V+且至少含一个非终结符,β∈V*,而V=VN∪VT,V称为文法G的字母表。例:G=({S},{0,1},{S→0S1,S→01},S)14文法的简化表示法通常不用将文法G的四元组显示表示,只写出产生式。约定:第一条产生式的左部是开始

20、符号或用G[S]表示S是开始符号;用大写字母(或用尖括号括起来)表示非终结符;用小写字母表示终结符。左部相同的产生式A→α,A→β可以记为:A→α

21、β,其中“

22、”是“或”的意思,α,β分别称为侯选式。3.3

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。