




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、29/29南 阳 理 工 学 院 教 案2018 2018 学年第 1 学期课 程 名 称 编译原理 授 课 专 业、班 级 计算机科学与技术10级本科计算机)、12级专升本计算机)总 学 时 、学 分 48学时 2.5学分授 课 教 师 徐艳群 职 称 讲 师 教 师 所 在 系 院 计算机与信息项目学院使 用 教 材 编译原理 南阳理工学院教案考查( 课程类型必修共同教育课 );学科基础课 );专业方向课 );实践教案 )选修共同教育选修课 );学科基础选修课);专业方向选修课 )专业 计算机科学与技术授课班级10级本科计算机)、12级专升本计算机)教师徐艳群职称 讲师学位硕士教材名称编译
2、原理作者张素琴出版社及出版时间清华大学出版社,2005参考资料编译原理作者蒋立源出版社及出版时间西北工业大学出版社,2002教案目的要求编译原理是计算机专业学生必须掌握的一门课程,编译技术的存在促使了高级语言的飞速发展,提高了编程的效率和质量。通过本课程的学习,可以使学生掌握编译程序的设计原理和常用的实现技术。教案重点难点教案重点:文法和语言的定义、词法分析、语法分析和语法制导翻译教案难点:词法分析、语法分析和语法制导翻译教案方法教案手段引导、启发、互动、案例教案法多媒体与板书相结合型教案考核方式闭卷笔试学生创新精神与实践能力的培养方法采用启发式的教案模式,给学生足够的思考空间,鼓励学生把理论
3、付诸与实践。其它要求要求学生熟练掌握C语言及算法与数据结构的知识,同时具有较强的逻辑思维能力。授课时间20182018 学年第 1学期第 1周13周南阳理工学院教案课时备课)授课题目:编译概述课时安排2学时周次第 1周课 序第 1次课教案目的及要求:从高级语言的飞速发展提高了人们的编程效率和编程质量引出学习编译原理的重要性。了解编译程序的概念,编译的过程和编译程序的结构。教案内容及重点、难点:教案内容:编译程序的概念、编译过程和编译程序的结构教案重点:编译过程和编译程序的结构教案难点:编译过程教案方法:引导启发、案例教案,比较教案过程设计回顾:专业课学习过程中学习过的编译这个名词,学生谈谈对编
4、译的感性认识。5分钟)引入新课:从学生的发言总结引入新课。5分钟)按照为什么要学习编译原理,学习编译原理有何用,怎样学习编译原理,编译程序的概念,编译的过程,编译程序的组织来组织教案内容。在教案过程中,通过例子来理解相关知识点。引导启发:低级语言与高级语言在对计算机的依赖程度、编程效率和编程质量上进行比较引入编译原理的重要作用。15分钟)从英文翻译为中文的过程与高级程序设计语言翻译为低级语言的编译过程进行比较将编译程序很自然的分为5个阶段,帮助同学理解编译的过程。10分钟)通过举例阐明编译的过程: 对程序 id1:=id2+id3*60进行词法分析10分钟);语法分析20分钟);语义分析和中间
5、代码生成20分钟)。小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题: P11 1、2、4题主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002教案后记:南阳理工学院教案课时备课)授课题目:符号和符号串课时安排2学时周 次第 1周课 序第2次课教案目的及要求:了解字母表、符号串的概念,了解符号串的几种主要的运算等。教案内容及重点、难点:教案内容: 字母表、符号串的概念,符号串的几种主要的运算教案重点:符号串的几种主要的运算教案难点:闭包运算,正闭包运算教案方法:引导启发、举例教案过程设计回顾:上次课的重点内容5分钟)引入新课:从高级程序设计语言的特点出发引入学习符号及符号
6、串的概念必要性。5分钟)按照概念学习、理解、掌握、应用等层次来组织教案内容。在教案过程中,通过例题和学生练习掌握相关内容。板书:字母表、符号串、符号串的前缀、后缀和字串、符号串的连接、符号串的方幂、符号串集合的方幂,符号串集合的乘积,符号串集合的闭包、正闭包的定义。15分钟)举例:严格按照定义,举例详细讲解各定义,加深学生对定义的理解。10分钟)课堂练习:已知:=a,b 求*,+思考: *,+的关系。5分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:主要参考资料:程序设计语言编译原理陈火旺著.国防工业出版社.2000编译原理蒋立源著.西北工业大学出版社.2002教案后记:
7、南阳理工学院教案课时备课)授课题目:文法和语言的形式定义课时安排2学时周 次第2周课 序第 3次课教案目的及要求:掌握文法的定义教案内容及重点、难点:教案内容:文法的定义,推导与归约,递归规则,文法和语言的等价。教案重点:文法的定义,推导与归约教案难点:文法的定义,推导与归约教案方法:引导启发、案例教案教案过程设计回顾:上次课的重点内容5分钟)引入新课: 通过要对高级语言的进行识别首先需要对高级语言进行定义引入文法。5分钟)互动:什么是文法?结合英语的语法让学生来谈自己的理解)。10分钟)举例:规则如下:句子=主语谓语主语=代词名词代词= 我你他名词= 王明大学生工人英语谓语=动词直接宾语动词
8、= 是学习直接宾语=代词名词证明:“我是大学生”该规则能够描述的句子。通过对句子“我是大学生”的推导,引入文法的概念,非终结符、终结符、产生式、开始符号的概念,句子的概念、句型的概念、推导的概念等。 其中:VN=S,VT=0,1,P=S0S1,S01,开始符为S呢?15分钟)思考:文法为什么有多种表示形式?10分钟)举例:引导学生写定义标识符的文法等10分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题: P47 1主要参考资料:程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:文法和语言之间的转换课时安排2学时周 次第2周课
9、 序第3次课教案目的及要求:掌握文法与语言之间的转换教案内容及重点、难点:教案内容:文法的定义,推导与归约,递归规则,文法和语言的等价。教案重点:文法与语言之间的转换。教案难点:已知语言求文法;已知文法求语言。教案方法:引导启发、案例教案教案过程设计回顾:上次课的重点内容5分钟)引入新课:定义的程序设计语言是可以识别的,识别的程序设计语言是可以定义的。引入文法和语言之间可以相互转换。5分钟)根据文法和语言的定义,给出已知语言求文法及已知文法求语言的一般方法。20分钟)已知文法求语言可以通过推导来完成,引入推导的规范表示方法:直接推导)的长度为1,直接推导序列)的长度n1,广义推导)的长度0,最
10、左推导,最右推导。bA, A-aA|a 定义了一个什么样的语言?5分钟)引入:可以根据语言的特点来写产生式,但在这个语言中出现了多次方需要引入递归文法。5分钟)思考:课后题P47 1,P48 2,4,9等=ambn|m,n1 的文法怎样实现呢?10分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:作业:P48 14、16主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记: 南阳理工学院教案课时备课)授课题目:文法的类型课时安排2学时周 次第2周课 序第4次课教案目的及要求:了解文法的类型,掌握常用的文法
11、:二型文法和三型文法。教案内容及重点、难点:教案内容:文法的类型。教案重点:文法的类型之间的异同。教案难点:不同类型文法的应用范围。教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容5分钟)引入新课:为了定义程序设计语言,Chomsky对文法中的规则施加不同限制,将文法和语言分为四大类。引入文法的类型。5分钟)比较:按照文法的分类,由易到难的分别介绍四种类型文法的定义。分别是0型文法,1型文法、2型文法和3型文法。15分钟)课堂练习:根据四种类型文法的定义,判断以下文法分别属于哪种类型: G4:AaB Aa 思考:这四种类型的文法有怎样的关系? 5分钟)小结:总结本次课的重
12、点及对学生要求。5分钟)讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:前后文无关文法及其语法树课时安排2学时周 次第2周课 序第4次课教案目的及要求:了解前后文无关文法与语法树的关系;掌握句型的语法树表示;掌握通过语法树来判断文法的二义性。教案内容:语法树的概念;句型推导过程的语法树表示;语法树与文法的二义性的关系。教案重点:句型推导过程的语法树表示;前后文无关文法与语法树的关系;教案难点:语法树与文法的二义性的关系。教案方法:引导启发、案例教案教案过程设计回顾
13、:上次课的重点内容。5分钟)引入新课:通过判断一个句型是不是文法的合法句型除了可以通过推导来判断之外,引入另外一种直观的表示方法就是语法树。5分钟)按照由浅入深的过程介绍语法树的概念,句型的推导过程的语法树的表示,语法树与文法二义性的关系。5分钟)引导启发:通过学生回顾数据结构中树的概念,引入了语法树的概念,进一步分析了语法树的特征。5分钟)案例互动:文法G:EE+T|TTTF|F FE)|i 句型T+TF的推导过程与语法树。回顾句型的推导过程;思考用语法树如何表示?通过学生的回答总结推导过程的语法树的表示。10分钟)案例互动:文法G:EE+E|EE|E)|i 句子 ii+i最左推导、语法树。
14、让学生构造 ii+i最左推导和语法树;提问构造过程学生有没有问题?最左推导不唯一,两棵语法树引出文法的二义性。思考如果是最右推导呢?总结文法的二义性可以通过三种方法判断,最左推导、最右推导和语法树10分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题: P48 7、10主要参考资料:程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:句型的分析课时安排2学时周 次第 3周课 序第5次课教案目的及要求:掌握通过推导或归约来证明一个符号串是否为某文法的句型。教案内容及重点、难点:教案内容:自顶向下的语法分析;自底向上的语法分析;求当
15、前句型的短语、直接短语和句柄。教案重点:求当前句型的短语、直接短语和句柄。教案难点:求当前句型的短语、直接短语和句柄。教案方法:引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。5分钟)引入新课:通过文法G:S cAd A ab A a 识别输入串w=cabd是否为该文法的句子。引入了本次课的内容句型的分析。10分钟)按照语法分析的方法分别介绍自顶向下的语法分析和自底向上的语法分析。其中自顶向下的方法主要是选择产生式的问题。互动:通过文法G:S cAd A ab A a 识别输入串w=cabd是否为该文法的句子。分别采用自顶向下构造语法树的方法实现和自底向上构造语法树的方法实现。帮助
16、学生理解自顶向下的语法分析和自底向上的语法分析;提问:在自顶向下的语法分析和自底向上的语法分析中会出现什么问题?思考:问题的解决方案。15分钟)自底向上的分析主要是选择可归约串的问题,重点介绍自底向上的分析方法中短语、直接短语和句柄的概念。20分钟)概念的理解有一定的难度,因此介绍了通过语法树找短语、直接短语和句柄的方法。20分钟)互动:GE:EE+T|T TTF|F FE)|I 的句型TF+i的短语、直接短语和句柄。15分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:P48 11、13主要参考资料:程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工
17、学院教案课时备课)授课题目:单词的描述工具课时安排6学时周 次第 3周课 序第 6次课教案目的及要求:了解单词的描述工具正规文法和正规式的定义;掌握正规文法和正规式之间的转换。教案内容及重点、难点:教案内容:正规文法和正规式的定义教案重点:用正规文法和正规式如何定义单词教案难点:正规文法和正规式之间的转换教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。5分钟)引入新课:通过标识符的定义引入用正规文法如何定义单词10分钟)按照最左或最右推导的方式用已知文法推导产生标识符,加深同学对正规文法的理解。引入新课:对单词的定义除了用正规文法外还有另外的一种方式就是正规式。10分钟
18、)介绍正规式的定义10分钟)1)e和F都是S上的正规式,它们所表示的正规集分别为e和F;2)任何aS,a是S上的一个正规式,它所表示的正规集为a;和L(e2,那么,(e1, e1e2, e1e2, e1*也都是正规式引入:通过正规文法和正规式都是用来定义单词的,正规文法和正规式之间的可以相互转换。15分钟)AxyAxB ByAx*yAxA AyAx|yAx Ay已知正规文法,求正规式。思考P72 8, P54例4.5。20分钟)已知正规式,求正规文法。思考P54例4.415分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:主要参考资料:程序设计语言编译原理陈火旺著.国防工业
19、出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:状态转换图课时安排6学时周 次第4周课 序第 7次课教案目的及要求:掌握左线性文法和右线性文法的状态转换图教案内容及重点、难点:教案内容:左线性文法和右线性文法的状态转换图教案重点:左线性文法和右线性文法的状态转换图教案难点:给出正规文法画状态转换图教案方法:引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。5分钟)引入新课:正规文法定义了3型语言,常见的单词可由正规文法定义。单词是如何识别的引入状态转换图。状态转换图可用于识别3型语言;它是设计和实现扫描器的一种有效工具,是有限自动机的直观图示10分钟)按照已知右线性文法
20、如何画状态转换图,介绍正规文法的状态转换图的画法。1)右线性文法一般分为:AaB,Aa和Ae三种形式,分别介绍三种文法在状态转换图中的画法。2)通过例题引导同学画右线性文法的状态转换图。3)介绍利用状态转换图识别符号串的方法。4)状态转换图与推导的关系,加深同学对右线性文法状态转换图的认识。20分钟)思考:P72 710分钟)按照已知左线性文法如何画状态转换图介绍正规文法的状态转换图的画法。1)左线性文法一般分为:ABa,Aa和Ae三种形式,分别介绍三种文法在状态转换图中的画法。2)通过例题引导同学画左线性文法的状态转换图。3)介绍利用状态转换图识别符号串的方法。4)状态转换图与推导的关系,加
21、深同学对左线性文法状态转换图的认识。的状态转换图。10分钟)思考:左线性文法和右线性文法在画状态转换图时的区别。10分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:把NFA变为DFA课时安排2学时周 次第 4周课 序第8次课教案目的及要求:掌握NFA变为DFA的方法教案内容及重点、难点:教案内容:有穷自动机的定义,NFA与DFA的定义,NFA变为DFA的方法教案重点:NFA变为DFA的方法教案难点:NFA变为DF
22、A的方法教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。 其中M:M(S,a=A M(S,b=BM(A,a=Z M(A,b=BM(B,a=A,B M(B,b=ZM(Z,a=A,Z10分钟)介绍确定化有穷自动机和不确定有限自动机的定义。15分钟)分析状态不确定的原因,思考解决方法;引出非确定化有限自动机确定化的算法;把状态数为两个或两个以上的状态看作是一个新的状态,让该状态再去识别字符,如果产生状态数多于或 等于两个的再看成新的状态去识别字符直到没有新的状态产生。比较确定化后与没有确定化之前状态有什么变化,是不是一种等价变换。15分钟)举例:对以上非确定化有限自动机进行确
23、定化。25分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:P72 2,4主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:具有e 动作的FA课时安排2学时周 次第 6周课 序第9次课教案目的及要求:掌握具有e 动作的FA 变为DFA的方法教案内容及重点、难点:教案内容:具有e 动作的FA的定义,具有e 动作的FA变为DFA的方法教案重点:具有e 动作的FA 变为DFA的方法教案难点:具有e 动作的FA 变为DFA的方法同样可以应用于前面介绍的不具有e 动作的FA
24、的确定化, 为什么?教案方法:引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。5分钟)引入新课:通过e 动作的FA的状态转换图引入其在识别单词过程中0次或多次识别e,而e与任何符号串的连接都是其他符号串,因此要对其进行确定化。10分钟)1) 分析状态不确定的原因,思考解决方法;。 qj= e-CLOSURE(Ta。若qjK,则令K=Kqj 。令f=ff(qj ,a= qj 。重复2.,直到K中无未标记的状态;令Z=qj | qj Z (这里把qj 视为集合3) 比较确定化后与没有确定化之前状态有什么变化,是不是一种等价变换。4) e动作的非确定化有限自动机确定化与前面介绍的非确定化
25、有限自动机的确定化方法统一起来。引导学生思考以上算法。10分钟)介绍以上算法。20分钟)举例:P58 图4.4利用两种方法对e动作的非确定化的有限自动机进行确定化40分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理教案后记: 南阳理工学院教案课时备课)授课题目:确定化有穷自动机状态数的最小化课时安排2学时周 次第 6周课 序第 10次课教案目的及要求:掌握确定化有穷自动机状态数的最小化算法。教案内容及重点、难点:教案内容:确定化有穷自动机状态数的最小化算法。教案重点:对某具体确定化有穷自动机
26、能进行最小化,比较最小化前后识别的正规式是否相等?教案难点:只能对确定化的有穷自动机进行最小化,对算法的理解及应用。教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。5分钟)引入新课:对于某一DFA来说,其状态数可能并不是最小的。原因是DFA中有些状态是“等价”的。为得到效率高的DFA,需将这些“等价”状态合并,引入DFA的最小化。10分钟)按照可区分状态和不区分状态的概念,对不可区分状态进行合并,直到所有状态都可以区分。因此得到最小化算法。Z f(t,wZ ( f(s,wZ f(t,wZ 不可区分状态:若wS*, f(s,wZ f(t,wZ,则称 s与 t等价。2)通过
27、举例引导同学理解可区分状态和不可区分状态。3)介绍最小化算法思想。将M的状态集K逐步地进行划分加细,以期将K划分为满足等价关系的等价类,使得在同一类中的状态不可区分;在不同等价类中的状态可区分。4)通过实例引导启发同学理解最小化算法。15分钟)思考:P61 例4.920分钟)小结:总结本次课的重点及对学生要求。5分钟)讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:正规式与有穷自动机之间的转换课时安排2学时周 次第7周课 序第 11次课教案目的及要求:掌握正规式
28、与有穷自动机之间的转换方法教案内容、重点、难点教案内容:正规式与有穷自动机之间的转换方法教案重点:正规式与有穷自动机之间的转换几种方法,应该选择哪种方法?教案难点:已知正规式能写出有穷自动机,理解其在词法分析中的应用。教案方法:引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:单词的描述工具为正规文法和正规式,单词的识别工具为有限自动机,定义的应该可以识别,前面介绍了正规文法和有限自动机之间的转换,引入正规式也可以与有限自动机进行转换。有限自动机的直观表示为状态转换图,因此介绍正规式的状态转换图。 按三种方法分别介绍正规式的状态转换图。 1)分别给出基本的正规式r1/r2
29、r1* r1.r2 的状态转换图,其他的正规式都是由这三种最基本的正规式经过或运算、闭包运算和连接运算得到。 2)通过举例引导学生画状态转换图。 3)介绍把正规式先看成整体画状态转换图,然后按照不断往小分解直到不能再小的方法画状态转换图。 4)介绍对闭包的处理方法,引出空串,再引出空串直接画状态转换图的方法。 5)比较几种方法的不同,采用哪种方法更好?小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:LL1)分析法课时安排4学时
30、周 次第7周课 序第 12次课教案目的及要求:掌握LL文法的定义。教案难点:左递归的消除,回溯的消除,LL1)文法的定义。教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:词法分析结束后进入语法分析,什么是语法分析?引入自顶向下分析法和自底向上分析法。按照自顶向下的语法分析和自底向上的语法分析可以结合自顶向下的构造语法树和自底向上的构造语法树来进行分析。结合具体实例介绍自顶向下分析和自底向上分析的思想。引导学生理解自顶向下的分析方法。1)通过提问引导启发自顶向下分析会面临什么问题?总结问题。2)引导问题的解决方案。给出消除左递归和消除回溯的公式。小结:总结本次课
31、的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:LL1)分析法课时安排4学时周 次第8周课 序第 13次课教案目的及要求:掌握LL1)分析法教案内容、重点难点:教案内容: FIRST集的构造算法,FLLOW集的构造算法教案重点: FIRST集的构造算法,FLLOW集的构造算法教案难点: FIRST集的构造算法,FIRST集的构造算法教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:怎样进行自顶向下语法分析,引入
32、 FIRST集的构造算法,FOLLOW集的构造算法。介绍 FIRST集的构造算法;引导学生自学FOLLOW集的构造算法。思考:GE 1)E TE2)E+TE3)Ee4)TFT5)T*FT 6)Te7)F E) 8)F i的FIRST集和FOLLOW集。小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料: 编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:LL1)分析法课时安排4学时周 次第8周课 序第 14次课教案目的及要求:掌握LL1)分析法教案内容、重点难点:教案内容:复习F
33、IRST集的构造算法,FLLOW集的构造算法;LL1)分析表的构造;对符号串进行LL1)分析。教案重点:LL1)分析法。教案难点:LL1)分析法。教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。在介绍LL1)分析法时,按照LL1)分析器包括总控程序、分析表和分析栈,介绍在LL1)分析中三者是如何配合工作的,引导同学谁是最核心的,通过学生提问总结分析表是分析的核心,分析表如何构造就需要构造两个集合:FIRST集合和FOLLOW集合。LL1)分析法:1)构造 FIRST集合和FOLLOW集合; 2)构造LL1)分析表; 3)对符号串进行LL1)分析。举例: GE 1)E T
34、E2)E+TE3)Ee4)TFT5)T*FT 6)Te7)F E) 8)F i对符号串i+i*i进行LL1)分析。小结:总结本次课的重点及对学生要求。讨论、作业和思考题:P100 2,3主要参考资料: 编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:简单优先分析法课时安排2学时周 次9课 序第 15次课教案目的及要求:掌握简单优先分析法。教案内容、重点难点:教案内容: 自底向上的语法分析、简单优先分析法教案重点: 简单优先分析法教案难点:简单优先分析法教案方法:引导启发、案例教案,比较教案过程设
35、计回顾:上次课的重点内容。引入新课:自顶向下的分析方法是从文法的开始符号出发进行推导的过程,自底向上的分析就是从句子出发进行归约的过程。引入自底向上的语法分析。按照自底向上的语法分析就是自底向上的构造语法树来进行分析,回顾短语、直接短语和句柄的概念,自底向上的分析就是在找句柄,不断对句柄进行归约的方法,本节课给出另外的一种找句柄的方式及简单优先分析法。1)对简单优先分析法进行字面理解。按照优先分析,简单优先分析、简单优先文法逐层分解的方式来理解。 1)介绍优先关系的概念2)简单优先关系的概念3)简单优先文法的概念2)介绍简单优先分析法就是通过比较相邻符号的优先关系找到句柄进行归约。 如何比较相
36、邻符号的优先关系按照定义来找,提示利用前面介绍的语法树来找。 让同学比较两者的不同,更喜欢采用哪一种方式。 找到简单优先关系就可以构造简单优先关系矩阵 对具体的符号串进行简单优先分析分析归约的是不是就是句柄,与前面介绍的通过找子树的方式找到的句柄是不是一样?总结简单优先分析法。小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记:南阳理工学院教案课时备课)授课题目:算符优先分析法课时安排2学时周 次9课 序第 16次课教案目的及要求:掌握算符优先分析法,比较它与简单优
37、先分析法的异同。教案内容: 算符优先分析法的思想。教案重点: 算符优先分析法的分析过程。教案难点: 算符优先分析法可归约串与简单优先分析法有什么不同?哪种方法更好?教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:简单优先分析法通过比较相邻符号的优先关系是不是很容易找全?通过学生回答引入算符优先分析法。按照与简单优先分析例似的方式介绍算符优先分析法。1)对算符优先分析法进行字面理解。按照算符文法、算符优先分析的方式来介绍。 1)介绍算符文法的概念2)算符优先关系的概念构造两个集合FIRSTVT和LASTVT,把算符优先关系与这两个集合的构造联系起来。3)算符优先
38、文法的概念 2)介绍算符优先分析法就是通过比较相邻终结符号的优先关系找到句柄进行归约。 如何比较相邻终结符号的优先关系按照定义来找,提示利用前面介绍的语法树来找。 让同学比较两者的不同,更喜欢采用哪一种方式。 找到算符优先关系就可以构造算符优先关系矩阵 对具体的符号串进行算符优先分析分析归约的是不是句柄,与简单优先分析法比较如何?引入最左素短语的概念。总结算符优先分析法。小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记: 南阳理工学院教案课时备课)授课题目:优先函
39、数法课时安排2学时周 次10课 序第 17次课教案目的及要求:了解优先函数法。教案内容、教案重点难点:教案内容:优先函数法。教案重点:优先函数法的思想。 教案难点:用优先函数法解决分析表过大的问题,比较采用优先函数法前后的不同,优先关系是不是增加了,影响优先关系的比较吗?教案方法:引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:当文法有n个符号时,就需要有n+1)2个内存单元终结符和#号),因而,在实际应用中往往用优先函数来代替优先矩阵表示优先关系。怎样减少存储空间呢?引入优先函数法。按照介绍优先函数的思想,优先函数的算法,给出实例引导同学讨论完成。1)介绍优先函数的思想
40、。2)介绍优先函数的算法。若已知文法G终结符之间的优先关系,可按如下步骤构造其优先函数f,g。a)对每个终结符aVT包括#号在内)令fa)=ga)=1,也可是其它整数)。b)如果ab,而fa)gb)则令 fa)=gb)+1。c)如果ab,而fa)gb)则令 gb)=fa)+1。d)如果ab,而fa)gb)则令minfa), gb)=maxfa),gb)。3)给出具体的实例让同学讨论回答。4)对学生的回答进行评价,补充。小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后
41、记:南阳理工学院教案课时备课)授课题目:LR0)分析法课时安排2周 次10课 序第 18次课教案目的及要求:掌握LR0)分析法教案内容、教案重点难点:教案内容:LR分析器的逻辑结构、LR分析器的工作原理和 LR0)分析法。教案重点:构造LR0)识别活前缀的有限自动机,构造LR0)分析表,对符号串进行LR0)分析。教案难点:活前缀概念的理解,ACTION表与GOTO表的合并过程的理解。教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:简单优先分析法要求文法是简单优先文法,算符优先分析法要求文法是算符优先文法,他们对文法都有一定的限制,有没有对文法没有限制的分析方法
42、,引入LR分析法。按介绍LR分析器的逻辑结构、LR分析器的工作过程、LR0)分析法有一般到具体的顺序组织教案内容。在教案中,学生通过互动分析等方式进一步加深理解LR分析法的思想和特征。尤其是在教案中突出理解LR分析法的基本思想。引导启发:1)介绍LR分析器的逻辑结构,分别包括哪几部分,各自的作用是什么?2)他们之间是如何配合工作的?3)采用LR分析法要解决的根本问题是什么?通过具体实例的引入理解LR分析法的工作过程。 引入:LR分析法的基本原理已经有所了解,不失一般性,什么是LR分析? 按LR0)的识别活前缀的有限自动机的构造,LR0)分析表的构造,对符号串进行LR0)分析的顺序组织教案内容。
43、 比较:LR0)分析法与简单优先分析与算符优先分析有什么不同,认识各自的优劣。 引导启发:是不是所有2型文法都可以采用LR0)分析法进行分析? 课堂练习: 对SA | B AaAb | c BaBb | c 进行LR0)分析小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记: 南阳理工学院教案课时备课)授课题目:SLR1)分析课时安排2周 次11课 序第 19次课教案目的及要求: 掌握 SLR1)分析法,比较与LR0)分析法的异同。教案内容、教案重点难点:教案内容:
44、LR0)分析中存在的问题,采用 SLR1)分析法解决。教案重点:构造LR0)识别活前缀的有限自动机,构造SLR1)分析表,对符号串进行SLR1)分析。教案难点: SLR的,所以LR(0分析表缺乏实用性,引入新课。按提出问题、分析问题、解决问题的思路组织教案内容。学生通过互动分析等方式进一步加深理解LR0)分析法的思想和分析过程中存在的问题。尤其是在教案中突出理解SLR1)分析法的基本思想和如何解决LR0)分析中存在的冲突。引导启发:1)对文法G:S rD D D,i|i能不能采用LR0)分析法进行分析? 怎样解决移进归约或归约归约冲突。 分析法。按对文法G:S rD D D,i|i采用SLR1
45、)分析法进行分析的过程组织教案内容。对比讲解:按SLR1)的识别活前缀的有限自动机的构造与LR0)分析法的异同),SLR1)分析表的构造与LR0)分析法的异同),对符号串进行SLR1)分析与LR0)分析的异同)。引导启发:是不是所有2型文法都可以采用SLR1)分析法进行分析? 课堂练习: 对SaAd | bAc | aec | bed Ae 进行SLR1)分析小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言编译原理陈火旺著.国防工业出版社.2000教案后记: 南阳理工学院教案课时备课)授课题目:LR1)分析法课时
46、安排2周 次11课 序第 20次课教案目的及要求: 掌握 LR1)分析法教案内容、教案重点难点:教案内容:SLR1)分析中存在的问题,采用 LR1)分析法解决。教案重点: 构造LR1)识别活前缀的有限自动机,构造LR1)分析表,对符号串进行LR1)分析。教案难点: LR的,所以SLR(1分析表缺乏实用性,引入新课。按提出问题、分析问题、解决问题的思路组织教案内容。学生通过互动分析等方式进一步加深理解SLR1)分析法的思想和分析过程中存在的问题。尤其是在教案中突出理解LR1)分析法的基本思想和如何解决SLR1)分析中存在的冲突。引导启发:1)对文法G:SaAd | bAc | aec | bed
47、 Ae能不能采用LR0)分析法进行分析? 怎样解决移进归约或归约归约冲突。 分析法。按对文法G:采用LR1)分析法进行分析的过程组织教案内容。对比讲解:按LR1)的识别活前缀的有限自动机的构造与SLR1)分析法的异同),LR1)分析表的构造与SLR1)分析法的异同),对符号串进行LR1)分析与SLR1)分析的异同)。引导启发:是不是所有2型文法都可以采用LR1)分析法进行分析? 课堂练习: 对文法G:SCbBA AAab|ab BC|Db Ca Da进行LR1)分析小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002,程序设计语言
48、编译原理陈火旺著.国防工业出版社.2000教案后记: 南阳理工学院教案分析法课时安排2周 次11课 序第 20次课教案目的及要求:了解LALR1)分析法。教案内容、教案重点难点:教案内容: LR1)分析表过大,采用LALR1)分析法解决。教案重点: 构造LALR1)识别活前缀的有限自动机,构造LALR1)分析表,对符号串进行LALR1)分析。教案难点: LALR1)分析能力与LR分析法的分析能力很强但分析表状态数过大,使分析的效率降低,引入新课。按提出问题、分析问题、解决问题的思路组织教案内容。学生通过互动分析等方式进一步加深理解LR1)分析法的思想和如何解决LR1)分析表过大的问题。引导启发
49、:1)对文法G:EE+T | T TT*F|F FE)|i采用LR1)分析法分析表是不是太大? 2)怎样把分析表变小?分析法。按对文法G:采用LALR1)分析法进行分析的过程组织教案内容。对比讲解:按LALR1)的识别活前缀的有限自动机的构造与LR1)分析法的异同),LALR1)分析表的构造与LR1)分析法的异同),对符号串进行LALR1)分析与LR1)分析的异同)。引导启发:是不是所有2型文法都可以采用LALR1)分析法进行分析?小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002;程序设计语言编译原理陈火旺著.国防工业出版社.
50、2000。教案后记: 南阳理工学院教案课时备课)授课题目:中间代码的表示形式课时安排2周 次12课 序第21次课教案目的及要求: 了解中间代码的表示形式,掌握中间代码的四元式表示。教案内容、教案重点难点:教案内容:中间代码的表示形式:逆波兰式、三元式、间接三元式和四元式。教案重点:中间代码的四元式表示。教案难点:中间代码的四元式表示如何产生?教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:对高级语言进行翻译产生机器语言,机器语言是0、1代码,不便于理解,因此翻译先产生中间语言,中间代码”是一种结构简单、含义明确的记号系统,这种记号系统可以设计为多种多样的形式,
51、重要的设计原则为两点:一是容易生成;二是容易将它翻译成目标代码。便于理解和优化引入新课。按中间代码的表示形式的分类分别介绍各种表示形式的定义,举例写出不同类型的中间代码来组织教案内容。引导启发:逆波兰表示法定义:将运算对象写在前面,把运算符号写在后面。思考:a+b,a+b)*c,a:=b*c+b*d等的逆波兰表示。对比讲解:三元式表示法:算符op,第一运算对象ARG1,和第二运算对象ARG2)举例:a:=b*c+b*d等的三元式表示。间接三元式表示法:三元式的序号用于存放结果的表示法。按:间接三元式序列间接码表的格式来写。举例:A+B*CD)+E/C-D)N引导启发:四元式表示法:算符op,第
52、一运算对象,第二运算对象,运算结果)思考:A+B*C-D)+E/C-D)N的四元式表示。四元式表示很类似于三地址指令,有时把这类中间表示称为“三地址代码”因为这种表示可看作一种虚拟三地址机的通用汇编码。重点掌握四元式表示。小结:总结本次课的重点及对学生要求。讨论、作业和思考题:主要参考资料:编译原理蒋立源著.西北工业大学出版社.2002。教案后记: 南阳理工学院教案课时备课)授课题目:简单算术表达式及赋值语句的翻译课时安排2周 次12课 序第21次课教案目的及要求: 掌握简单算术表达式及赋值语句的翻译。教案内容、教案重点难点:教案内容:简单算术表达式及赋值语句的属性翻译文法,对简单算术表达式及赋值语句进行翻译。教案重点:简单算术表达式及赋值语句的属性翻译文法的理解,在具体翻译中如何应用。教案难点:简单算术表达式及赋值语句的属性翻译文法中重要函数的具体含义。教案方法: 引导启发、案例教案,比较教案过程设计回顾:上次课的重点内容。引入新课:a:=b*c+b*d怎样进行语法制导翻译引入新课。按先介绍简单算术表达式及赋值语句的属性翻译文法,对a:=b*c+b*d进行语法制导翻译。介绍:简单算术表达式及赋值语句的属性翻译文法:1)Sid:=Ep:=look );if pnil then GENp:=E.place) else error2)EE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑钢结构安全管理施工防护安全课件
- 工程结算88课件
- 建设工程投标人学习情境一建设工程承发包与招投标认知课件
- 钢筋的张拉控制应力何玉明课件
- 哈尔滨科学技术职业学院《建筑环境交互原理》2023-2024学年第二学期期末试卷
- 浙江艺术职业学院《自然保护地学》2023-2024学年第二学期期末试卷
- 金融行业财务分析的深度与广度探讨
- 齐鲁师范学院《现实生活中的博弈思维》2023-2024学年第二学期期末试卷
- 湖南税务高等专科学校《秦汉史专题》2023-2024学年第二学期期末试卷
- 营口职业技术学院《信息与编码》2023-2024学年第二学期期末试卷
- 2025年01月中国疾控中心信息中心公开招聘1人笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 北京市丰台区2024-2025学年高二上学期期末英语试题
- 人教版小学数学三年级下册第一单元位置与方向一单元测试
- 雅礼中学2024-2025学年初三创新人才选拔数学试题及答案
- 2023年苏州卫生职业技术学院高职单招(语文)试题库含答案解析
- 建设工程围挡标准化管理图集(2022年版)
- 2022新教科版六年级科学下册全一册全部教案(共28节)
- 班主任培训-家校沟通课件
- 河南省县普通高中学生学籍卡片
- 端盖压铸模具设计毕业设计论文
- 道路工程案例分析
评论
0/150
提交评论