二章语言的基本学习.ppt
《二章语言的基本学习.ppt》由会员分享,可在线阅读,更多相关《二章语言的基本学习.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、二章语言的基本知识 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望学习本章的目的u构造编译程序的算法是从研究源程序及目标程序产生的,首先找到源语言的形式描述,根据这种描述,构造出相应的分析加工程序。u语言分语法,语义和语用。程序语言语法的形式描述是很好用的,语义的形式描述不那磨好用,但它推动语言理论的发展。2 2.1符号串u2.1.1 字母表u2.1.2 符号串 一.符号串的定义u 二.术语u 三.符号串的运算u 四.符号串集合的运算3 字母表是符号的非空有穷集合
2、。任何程序语言都有自己的字母表,例如:1.计算机语言:由符号“0”和“1”组成的字 母表,=0,1 2.ASCII字符集;3.Pascal字母表为:=AZ,az,09,+,-,*,/,:,;,.,,(,),2.1.1字母表4一.符号串的定义(1)是上的一个符号串。(2)若x是上的符号串,而a是的元素,则xa是上的符号串。(3)y是上的符号串,当且仅当它由(1)和 (2)导出。由字母表中的符号所组成的的任何有穷 序列被称之为该字母表上的符号串,也称作字。2.1.2符号串5 设s是符号串前缀:移走s的尾部的零个或多于零个符号后缀:删去s的头部的零个或多于零个符号子串:从s中删去一个前缀和一个后缀子
3、序列:从s中删去零个或多于零个符号(这些符号不要求是连续的)逆转(用SR表示):将S中的符号按相反次序写出而得到的符号串。长度:是该符号串中的符号的数目。例如|aab|=3,|=0。二术语6 :符号串s=banana前缀:,b,ba,ban,bana,banan,banana后缀:banana,anana,nana,ana,na,a,子串:banana,anana,banan,anan,真前缀,真后缀,真子串:xsx 子序列:baa(这些符号不要求是连续的)逆转(用SR表示):ananab长度:banana=6例71.连接:设x和y是符号串,它们的连接xy是把y的符号写在x的符号之后得到的符号
4、串。例如,x=ba,y=nana,xy=banana.2.方幂:x0=;x1=x;x2=xx;xn=xn-1x;例如,x=ba,x1=ba,x2=baba,x3=bababa,.三.符号串的运算8 设L和M是两个符号串集合,则 1.合并:LMs|sL or sM 2.连接:LM st|sL and tM 3.方幂:L0=,L1L,L2LL,.,LnLn-1L 4.语言L的Kleene闭包,记作L*,L*Li(i=0)=L0L1L2L3 5语言L的正闭包,记作L+(L+LL*)L+Li(i=1)=L1L2L3L4四.符号串集合(语言)的运算9如:L=AZ,azD=091LD=AZ,az,092L
5、D是由所有用一个字母后跟一个数字 组成的符号串所构成的集合。3L4是由所有的四个字母的符号串构的集合。4L(LD)*是由所有的字母打头的字母和数字组成的符号串所构成的集合.5D+是由所有的长度大于等于1的数字串所构成的集合.例102.2 文法和语言的定义u2.2.1引子u2.2.2文法和语言的定义u一.文法和语言的定义u二.推导u三.语言u四.最左推导和最右推导u五。短语,直接短语,句柄11引子分析:Thegreywolfwilleatthegoat谓语主语冠词形容词名词动词直接宾语助动词句子动原冠词名词Thegreywolfwilleatthegoat12为了进行机械分析,:“句子由主语后跟
6、随谓语组成”表示为:句子主语谓语(1)主语冠词形容词名词(2)冠词the形容词grey谓语动词直接宾语(5)动词助动词动词原形(6)助动词will动词原形eat直接宾语冠词名词(9)名词wolf名词goat语法规则13 :终结符号集,非终结符号集,语法规则,开始符号。终结符号集VT=the,grey,wolf,will,eat,goat非终结符号集VN=句子,主语,谓语,冠词,形容词,名词,动词,直接宾语,助动词,动词原形语法规则集P=句子主语谓语,开始符号S=句子句子的语法有四部分14句子主语谓语冠词形容词名词谓语the形容词名词谓语thegrey名词谓语thegreywolf谓语thegr
7、eywolf动词直接宾语.thegreywolfwilleatthegoat句子根据规则推导出来15句子thegreywolfwilleatthegoatthegreywolfwilleatthewolfthegreygoatwilleatthewolfthegreygoatwilleatthegrey合符语法且合符语义的句子仅是:thegreywolfwilleatthegoat+句子既要合符语法又要合符语义16分析:Thegreywolfwilleatthegoat句子主语谓语冠词形容词名词动词直接宾语助动词动原冠词名词goattheeatwillThegreywolf句型分析一17分析:
8、Thegreywolfwilleatthegoat句子主语谓语冠词形容词名词动词直接宾语助动词动原冠词名词goattheeatwillThegreywolf句型分析二18 一个上下文无关文法 G=(VT,VN S,P),其中:VT是一个非空有穷终结符号集合;VN是一个非空有穷的非终结符号集合,且VTVN;S VN,称为开始符号。P是一个产生式的非空有穷集合,每个产 生式的形式是A(或A:),其中 AVN,(VTVN)*。开始符号S至必须在某个产生式的左部出现一次。缩写形式:A 1|2一文法的定义19G=(a,+,*,(,),,P)P:*()aEE+TTTT*FFF(E)a(2.1)例2.2算术
9、表达式的文法G:20令G=(VT,VN,S,P),若AP,且,(VTVN)*,则称A直接推出,表示成AA直接推出直接归约到A 如果存在一个直接推导序列:012 n(n0)表示成 0 n 0 n 或者0=n或者0 n+*二.定义2.3 直接推导和推导的定义21例:EE+TT+TF+Ta+Ta+Fa+a22设文法 G(VT,VN,S,P)。如果S ,则称是一个句型。仅含终结符号的句型是一个句子。语言 L(G)是由文法G产生的所有句子所组成的集合:L(G)|S 且VT*例2.3 考虑一个文法 G(a,b,S,S,P)其中P:SaSbabSaSbaaSbba3Sb3an-1Sbn-1anbn*+三.定
10、义2.4:语言的定义23 设G=(VT=a,b,VN=S,A,B,S,P P由下列产生式组成:SaB|bA Aa|aS|bAABb|bS|aBBL(G)=w|wa,b+,且w中有相同个数的a和b。用归纳法证明下面结论(对w的长度):(1)S w,当且仅当w中含有相同个数的a和b。(2)A w,当且仅当w中a的个数比b的个数多一个。(3)B w,当且仅当w中b的个数比a的个数多一个。归纳基础归纳基础 当|w|=1,Aa,Bb,不能从S导出长度为1的终极行,则上述结论显然成立。*例2.424 设(1),(2)和(3)对于长度不超过k-1的所有w都成立。那么,证明对|w|=k也成立。对于(1),推导
11、的第一步必是SaB或SbA,对于第一种情形,必有w=aw1且B w1,|w1|=k-1,它含的b个数比a多一个,因此,w中a,b的个数相等。推导的第一步是SbA,证明完全类似。反之,|w|=k,w中a,b的个数相等,要证S w。考虑的S推导,推导出的开始符号,或为a或为b。若SaB,B w1,|w1|=k-1,w1中b的个数比a多一个,w=aw1。若S bA,证明和类SaB类似。(2)和(3)的证明留给同学们。*归纳步骤归纳步骤25:对于w和G,wL(G)是否存在Sw,如何构造例如,GE(例2.2)和w=a+aaEE+TT+TF+Ta+Ta+TFa+FFa+aFa+aa(最左)特点:A(A),
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本 学习
限制150内