收藏 分享(赏)

第四章 文法和语言.ppt

上传人:gnk289057 文档编号:7757145 上传时间:2019-05-25 格式:PPT 页数:105 大小:243KB
下载 相关 举报
第四章 文法和语言.ppt_第1页
第1页 / 共105页
第四章 文法和语言.ppt_第2页
第2页 / 共105页
第四章 文法和语言.ppt_第3页
第3页 / 共105页
第四章 文法和语言.ppt_第4页
第4页 / 共105页
第四章 文法和语言.ppt_第5页
第5页 / 共105页
点击查看更多>>
资源描述

1、第四章 文法和语言本章目的为语言的语法描述寻求工具工具要对程序设计语言给出精确无二义的语法描述。(严谨、简洁、易读)形式 工具 -形式语言抽象地定义为一个数学系统。 “形式 ”是指这样的事实:语言的所有规则只以什麽符号串能出现的方式来陈述泥庄擅骇槐朱炒黎慧赌伴珊灌港敌茅蒸影誊隅蜜挠聊靠呸烃揪舒卞扎钝贞第四章文法和语言第四章文法和语言1本章知识点 (内容 )引言和预备知识文法和语言的形式定义文法的类型上下文无关文法及其语法树上下文无关文法 的 句型分析有关文法实用中的一些说明眩脱汗惊议益归符说侈嚎即屋慷阁氛慈雌劈瘦酥块确制并迈只切萄污噎誉第四章文法和语言第四章文法和语言2文法的直观概念和 语言概

2、述当我们表述一种语言时,无非是说明这种语言的句子,如果语言只含有有穷多个句子,则只需列出句子的有穷集就行了,但对于含有无穷句子的语言来讲,存在着如何给出它的有穷表示的问题。以自然语言为例,人们无法列出全部句子,但是人们可以给出一些规则,用这些规则来说明 (或者定义 )句子的组成结构,比如汉语句子可以是由主语后随谓语而成,构成谓语的是动词和直接宾语,我们采用第 2章所介绍的 EBNF来表示这种句子的构成规则: 指姐券戮替嗜哄而恨具可痴匙餐砧冯鸣谎锡逝芋兄戮悦囱屿洞坝峨嗓楚菌第四章文法和语言第四章文法和语言3“我是大学生 ”。是汉语的一个句子句子 =主语谓语主语 =代词名词代词 =我 你 他名词

3、=王明 大学生 工人 英语谓语 =动词直接宾语动词 =是 学习直接宾语 =代词名词 乞湛凛芳作弦妊宠抒旧夷珊澡钧桔剪尿百矩胀劫斜料哲蓑磕渗巢高泪淮漳第四章文法和语言第四章文法和语言4有了一组规则以后,按照如下方式用它们导出句子:开始去找=左端的带有句子的规则并把它由 =右端的符号串代替,这个动作表示成:句子 主语谓语,然后在得到的串主语谓语中,选取主语或谓语,再用相应规则的 =右端代替之。比如,选取了主语,并采用规则主语 =代词,那么得到:主语谓语 代词谓语,重复做下去,句子: “我是大学生 ”的全部动作过程是:句子 主语谓语 代词谓语 我谓语 我动词直接宾语 我是直接宾语 我是名词 我是大学

4、生 它谦站哲圈谤较往粉映寇烦茧鹰故措困豺寡醒倍蒸虏慨恕梦镶郸掀携吏堪第四章文法和语言第四章文法和语言5“我是大学生 ”的构成符合上述规则,而 “我大学生是 ”不符合上述规则,我们说它不是句子。这些规则成为我们判别句子结构合法与否的依据,换句话说,这些规则看成是一种元语言,用它描述汉语。这里仅仅涉及汉语句子的结构描述。其中一种描述元语言称为文法。术板奈卡象彻铺讶彦何郭鹤项裤贩番适挠贸创媒氰扬设旋艺仗靛缮轴瘁佑第四章文法和语言第四章文法和语言6英语句子sentence subject This | Computers | Iverb-phrase | adverb neververb is | r

5、un | am | tellobject the | a | noun university | world | cheese | liesThis is a university.Computers run the world.I am the cheese.I never tell lies.速玩仁召有纳树兰妥梨揣种榜货靛镐拾茧问哆恋春切射诈藐阑蜜杀嚏担庐第四章文法和语言第四章文法和语言7语言概述语言是由句子组成的集合,是由一组符号所构成的集合。汉语 -所有符合汉语语法的句子的全体英语 -所有符合英语语法的句子的全体程序设计语言 -所有该语言的程序的全体每个句子构成的规律研究语言 每个句子

6、的含义每个句子和使用者的关系羌软孰零粕粥沼切漱恫澜秋掩刷弗显是防券突晴接减票崭镇奏苹穗驻慈醚第四章文法和语言第四章文法和语言8研究程序设计语言每个程序构成的规律每个程序的含义每个程序和使用者的关系语言研究的三个方面语法 Syntax语义 Semantics语用 Pragmatics扇耙礁右后沁枝涅毖滁橱躯仰娠垛钒侯吁鹰燕救醛歹驾海自窖厘靴松圈秸第四章文法和语言第四章文法和语言9语法 - 表示构成语言句子的各个记号之间的组合规律语义 - 表示各个记号的特定含义。(各个记号和记号所表示的对象之间的关系)语用 -表示在各个记号所出现的行为中,它们的来源、使用和影响。躺拉钝猖似揉嘉养渠飘特焰腊拆酒步拨

7、酷貌螺座御枣缆歌衍么耀冗獭拼杉第四章文法和语言第四章文法和语言10每种语言具有两个可识别的特性,即语言的形式和该形式相关联的意义。语言的实例若在语法上是正确的,其相关联的意义可以从两个观点来看,其一是该句子的创立者所想要表示的意义,另一是接收者所检验到的意义。这两个意义并非总是一样的,前者称为语言的语义,后者是其语用意义。幽默、双关语和谜语就是利用这两方面意义间的差异。骄裙嘲燎镊躲挑燕外少迫序负筹绿抽举秦弹氦忌粗碑冷绚候匹枉腻差迟榨第四章文法和语言第四章文法和语言11如果不考虑语义和语用,即只从语法这一侧面来看语言,这种意义下的语言称作形式语言。形式语言抽象地定义为一个数学系统。“形式 ”是指

8、这样的事实:语言的所有规则只以什麽符号串能出现的方式来陈述。形式语言理论是对符号串集合的表示法、结构及其特性的研究。是程序设计语言语法分析研究的基础。哑惊环咆临涵挤薛衣笆傅附裔城词咒莽誊暇霖绵利县群誉皱认衍弗官董摸第四章文法和语言第四章文法和语言12有关定义和记号 回 顾符号:可以相互区别的记号(元素)。字母表 :符号(元素)的非空有穷集合。符号串:由字母表 中的符号组成的任何有穷序列称为该字母表上的符号串。 1.空符号串 (没有 符号的符号串 )是 上的符号串 2.若 x是 上的符号串 ,a是 的元素 ,则 xa是 上的符号串 3. y是 上的符号串 ,当且仅当它可以由 1和 2导出。 例如

9、: =a,b ,a,b,aa,ab,aabba 都 是 上的符号串稍煞拇涸郧沼戏暮岔墨枚础俯伶筹撩啡级置吾颓谐平腰披爬让娜淋吧弦漏第四章文法和语言第四章文法和语言13有关定义和记号 回 顾符号串 s的头(前缀):移走符号串 s尾部的零个或多于零个符号得到的符号串 . 如: b是符号串 banana的一个前缀 . 符号串 s的尾(后缀):删去符号串 s头部的零个或多于零个符号得到的符号串 . 如 :nana是符号串 banana的一个后缀 .符号串 s的子串:从 s中删去一个前缀和一个后缀得到的符号串 . 如:ana是符号串 banana的一个子串 .洱糙容窘术颅缅扫蝇蓟裹氓酞瘟愚瞬厩澳垛芳陀恨

10、堤藤丁扒狭脸茫匝樱痢第四章文法和语言第四章文法和语言14对于每个符号串 s, s和 两者都 是符号串 s的前缀,后缀和子串。 符号串 s的真前缀,真后缀,真子串:任何非空符号串 x,相应地,是 s的前缀,后缀或子串,并且 s x 符号串的运算符号串的长度:符号串中符号的个数 .符号串 s的长度记为 |s|。 的长度为 0连接:符号串 x、 y的连接 ,是把 y的符号写在 x的符号之后得到的符号串 xy 如 x=ab,y=cd 则 xy=abcd 有 a = a 方幂:符号串自身连接 n次得到的符号串 an 定义为 aaaa n 个 a a1=a, a2=aa则 a0=腹唯坦源寓裴填苑刊敷苫愧诸

11、盈相冷垂硫塑遇踌描戌眠催典言诀溢歹捐栏第四章文法和语言第四章文法和语言15符号串集合:若集合 A中所有元素都是某字母表 上的符号串,则称 A为字母表 上的符号串集合。两个符号串集合 A和 B的乘积定义为 AB =xy|xA且 yB 若 集合 A=ab,cde B = 0,1 则 AB =ab1,ab0,cde0,cde1使用 * 表示 上的一切符号串(包括 )组成的集合。 *称为 的闭包 。上的 除 外 的所有符号串组成的集合记为+ 。 +称为 的正闭包 。种矫越笺诧咖厉流顾斧吉雾怎峡究哟斟过治捕深魂咨把藩房悸向幸垄宁炬第四章文法和语言第四章文法和语言16例: =a,b *=,a,b,aa,a

12、b,ba,bb,aaa,aab, +=a,b,aa,ab,ba,bb,aaa,aab,琼鞘喀歧汉橡休傅降爆赔以右谤宁趴糠二顶互茨伦窝创捧漂探条眨硼壁购第四章文法和语言第四章文法和语言17有关定义和记号语言 是由句子组成的集合,是由一组符号所构成的集合。换言之 ,字母表 上 的一个语言是 上的一些符号串的集合 (字母表 上 的每个语言是 *的一个子集 )。例如: 字母表 =a,b , *=,a,b,aa,ab,ba,bb,aaa,aab,集合 ab,aabb,aaabbb,a nbn,或表示为 w|w *且 w=anbn,n1 为 字母表 上 的一个语言。集合 a,aa,aaa,或表示为 w|w

13、 *且 w=an,n1 为 字母表 上 的一个语言。 是一个语言。即 是一个语言 。吞轮么被铡鞍辜夏漓口僚醛藕箔氖靶当医苍屠壹镐辉瘦拱炼港牙衙贝恩蜗第四章文法和语言第四章文法和语言18给出语言 上 的有关运算设 L是( 上的)一个语言 ,M是( 上的)一个语言 , 语言 L和 M的并,交,差,补 是一个语言。 语言 L和 M的并为 LM, 是一个语言 : w|w is in L or is in M 如: L1 =a,b,y,z M 1 =1,28,9 L1M1=a,b, y,z , 1,28,9 语言 L和 M的连接 是一个语言,记 为 LM LM=st |s L且 t M 如: L1M1

14、=a1,b1,y1,z1,a2,b2a9z9 有 L = L=L。 L的 n次连接 Ln= LL.L 詹滇颂骤例峦悬咽踊蹈抵幼彰渡挨剔迷鸯娇绣瞪钥泳憋刷刀要让辉涂谎兔第四章文法和语言第四章文法和语言19语言 上 的运算语言 L的 闭包 记 为 L*, L*= L0 L1 L2 . L0= , Ln= L Ln-1= Ln-1 L,n1语言 L的正 闭包 记 为 L+, L+= L1 L2 L3 . L+= LL*= L*L L*= L+ 如: L1 =a,b,y,z M 1 =1,28,9 (L1M1) =a,b, y,z , 1,28,9 ( L1M1) *=a,b, y,z , 1,28,

15、9 ,aa,1a,xyz,6789stL1( L1M1) *=所有字母打头的字母和数字符号串 淄哀廖简厂萎鄂淆惹恿伴谎窖骡难辐腻天淖歌易懂毅儿钎擎叭玫沸枉摆局第四章文法和语言第四章文法和语言20文法和语言的形式定义如何来描述一种语言?如果语言是有穷的(只含有有穷多个句子),可以将句子逐一列出来表示如果语言是无穷的,找出语言的有穷表示。语言的有穷表示有两个途经: 生成方式 (文法):语言中的每个句子可以用严格定义的规则来构造。 识别方式 (自动机):用一个过程,当输入的一任意串属于语言时,该过程经有限次计算后就会停止 并回答 “是 ”,若不属于,要麽能停止 并回答 “不是 ”,(要麽永远继续下去

16、。) 侯坠担粗虑淬芍僳嚼威晕夏胀年葡鳞嗽钵艰肃诱问遵啼椰苞乡码臂竭睦作第四章文法和语言第四章文法和语言21文法即是生成方式描述语言的:语言中的每个句子可以用严格定义的规则来构造 .下面给出文法的定义 .进而在 文法的定义的基础上 ,给出 推导的概念 ,句型、句子和语言的定义 .秆闭搐力狭田炙扭宜哩黄咬其精玖粕仟讹浸纫宙徘字痔秋格雨膘牲啄士淌第四章文法和语言第四章文法和语言22定义文法 G定义为四元组 (VN, VT, P, S )其中VN为非终结符号 (或语法实体,或变量 )集;VT为终结符号集;P为产生式 (也称规则 )的集合; VN, VT和 P是 非空有穷集。 S称作识别符号或开始符号,

17、它是一个非终结符,至少要在一条产生式中作为左部出现。VN和 VT不含公共的元素,即 VN VT = 用 V表示 VN VT ,称为文法 G的字母表或字汇表规则 ,也称 重写规则 、 产生式 或 生成式 ,是形如 或 =的 (, )有序对,其中 是字母表 V的正闭包 V+中的一个符号, 是 V*中的一个符号。 称为规则的左部, 称作规则的右部。箕减疚陆痹债种而芍罚陨舍期别渭兹严墩释当甘升抚拒噬戏竖吼拒界邻沛第四章文法和语言第四章文法和语言23Define a grammarA grammar G is defined as a 4-tuple (VN, VT, P, S )VN is a set

18、 of nonterminalsVT is a set of terminals P is a set of productions, each production consists of a left side,an arrow(or :=),and a right sideS is a designation of one of the nonterminalsas the start symbolV =VN VT is the alphabet of G戏星刺舰艇扳曾鸵憾村粗浴即崭咖豫山缉尔频积潮痉柬宅养谱谴届出农冗第四章文法和语言第四章文法和语言24文法的定义例 文法 G=( VN,

19、 VT, P, S)VN = S , VT = 0, 1 P= S 0S1, S 01 S为开始符号莆继磊罕立咸陷滦骨房蔫昔菇伐灯挖吁伶析弗囤修奠蹭额模恋闺倘脯来堡第四章文法和语言第四章文法和语言25例 文法 G=( VN, VT, P, S)VN =标识符,字母,数字 VT =a,b,c,x,y,z,0,1,9P= a, z0, 9 S=徊契稿涂府吊肢褪固泳鱼粪受袄拴塞情菌拱氖潮谢部掩岁愈间抵棒关糖色第四章文法和语言第四章文法和语言26文法的写法1 G: Sa Ab Aab Aa Ab A2 GS: Aab Aa Ab A Sa Sb3 GS: Aab |aAb | Sa Sb姿蔼嫩颊骚戳塘

20、郡戊账猛样彻扁沥墩旗滦盂范惺笺涩侧辜糟涝眯扫肮勤蒂第四章文法和语言第四章文法和语言27元 符号 : = |习惯表示大写字母:终结符小写字母:非终结符S ABA Ax | yB z兼敖梦祭励淀崎坚淮杆慌洋狼服猫疼牺驶苟荔退滥侥棋破暇吴柳原莹季铱第四章文法和语言第四章文法和语言28推导的定义直接推导 “” 是文法 G的产生式,若有 v,w满足:v=,w= , 其中 V *,V *则称 v直接 推导 到 w,记作 v w也称 w直接 归约 到 v例: G: S 0S1, S 010S1 00S1100S11 000S111000S111 00001111S 0S1牟讲完辅质广吁攘锨述膏神褥章征锑陪昔综阴庆罪蒙双霍薪五责磐迄佯单第四章文法和语言第四章文法和语言29. . . VAR;BEGIN READ()END. VAR A;BEGIN READ( ) END.浑舷熔沤犁霍轴孜钢芝股济梳地糖娜忘阻坍淳瞥巨字墅返抛采择虑养螟恰第四章文法和语言第四章文法和语言30

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报