当前位置: 首页 > 范文大全 > 优秀范文 >

基于首要教学原理指导的“编译原理”课程教学实践

发布时间:2022-03-20 10:21:49 | 浏览次数:

摘要:《编译原理》是计算机科学与技术专业的与计算机专业的主干课程,具有理论性强、内容抽象等特点。根据梅瑞尔首要教学原理 , 结合编译原理的课程内容以“解决问题”为核心,通过唤醒旧知、展示新知、应用新知、归纳总结、融会贯通五个阶段完成编译原理课程中语法分析的教学过程,取得了良好的教学效果。

关键词:梅瑞尔首要教学原理;编译程序;语法分析;语法分析树;上下文无关文法

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2018)32-0177-02

Abstract: The Principles of Compilers Course is the a major course of computer science and technology ,and this course is characterized by strong theory and abstract content. According to the First Principles of Instruction, the course content takes "problem solving" as the core, and completes the teaching process of grammar analysis in the course of compiling principle by awakening the old knowledge, displaying the new knowledge, applying the new knowledge, summarizing, and integrating through five stages ,it is showed that the First Principles of Instruction is effective in guiding teaching design.

Key words:Merrill"s First teaching principle; computer compiler; syntax analysis ; syntax tree; context- free grammar

1 引言

《编译原理》作为计算机科学与技术专业的专业基础课具有抽象性强、逻辑性高、偏理论性等特点,因此学生理解起来相对困难。同时该课程又具有很强的综合性,要求学生具备计算机组成原理、高级语言程序设计、数据结构、操作系统等课程的知识。

本文以首要教学原理为依据,对《编译原理》课程的核心知识点语法分析进行了研究性教学实践。

2 五项首要教学原理

五项首要教学原理是戴维·梅里尔(M. David Merrill)教授总结了行为主义、认知主 义、构建主义等诸多学习理论,在2002 年提出来的重要教学原理。该原理以最终促进学习者学习为目的,提出:(1) 当学习者介入到解决现实生活 中的问 题时 , 才能促进学学习 。(2) 当激活已有的 知识且作 为新学 习 的基础时 , 才能促进学 习 。(3) 当向学 习者展示新知识时 , 才能促进学习 。(4) 当学习 者具体应用新知识 时 , 才能促进学 习 。(5) 当新 知识 整合 到学 习者实际 生 活 中时 , 才 能 促 进学 习。[1]

3 五项首要教学原理在教学实践中的应用

根据五项“首要教学原理”的内容, 主要从导入知识、激活旧知、展示新知、尝试应用和融会 贯通等以下几个具体方面将其运用到教学实践中。

“自顶向下的语法分析”在课程导入部分,通过布置导学任务,让学生了解要学习的课程内容必需的预备知识,通过之前学习过程中遇到的问题激发学生的学习兴趣;在激活旧知识阶段,结合课程内容,将与此相关的《程序设计基础》《离散数学》等课程的知识点与新内容进行知识的拓展和迁移;在展示新知识阶段,以LL(1)文法为例,以语法分析树为工具,讲解First集、Follow集、Select集等概念;在尝试应用阶段,以小组为单位,结合递归下降分析法和确定的预测分析法实现C语言的语法分析程序,进行知识的融会贯通。

3.1 知识引入阶段

根据梅里尔的理论,当学习者介入到解决生活实际问题 时,学习才能够得到促进。因此,在课程讲授过程中,教学内 容是否能够在联系现实问题的情境中加以呈现是关键 所在。

因此,为了激发学生的学习兴趣,在引入课程内容前,发放导学任务单让学生完成如下任务:

1) 列举C 语言 的语法要求

2) 列举C语言编译过程中常见的语法错误信息

通过完成课前的资料整理和阅读,大多数的学生能够对要进行讲解的知识点有了一个初步的认识。学习者就会了解编译程序的语法分析,就是根据程序语言的语法规则,对源程序进行语法分析,如果源程序不符合语言的语法规则,就通过调用出错處理程序,给出相应的出错信息。

只有学生对具体的源程序的语法规则有了一定的了解,才会理解课程中抽象的语法规则。学生通过平时编译C程序遇到的出错信息,才会对编译过程中的语法分析的任务有了一个具体的认识。学生就会对编译程序如何完成语法分析产生了兴趣。

3.2 激活旧知识,迁移理解新知识

当以往相关的知识和经验被激活时, 学习才能够得到促进。

在讲授语法分析之前,结合形式语言的文法知识,详细介绍描述程序语言的语法规则的文法—上下文无关文法。对于大多数学生而言,形式语言文法是很抽象的内容,可以在该阶段,引导学生回忆《离散数学》课程中“集合”的概念,让学生从形式语言的角度认识到符号和符号串的关系,理解符号串的连接运算,理解空串ε,引导学生可以从代数系统的角度,空串ε相当于单位元素。程序设计语言就是符合某些规则的符号串的集合。

在上下文无关文法的引入前,以学生熟悉的英语语法入手,以自然语言的句子分析为例,开始语法分析的讲解。从而消除学生对新知识的陌生感。而且也建立了新旧知识之间的联系,使旧知识成为学习新知识的基础。

3.3 知识展示新知

只有教学展示论证了所学的新知识而不 是仅仅告知相关的信息时,学习才能够得到促进。

因此,在讲授自顶向下语法分析的时候,要避免从概念到概念的注入式教学方式,在该部分的讲授过程中,借助语法分析树为主要工具,将自顶向下语法分析中的主要问题,如:回溯问题,左递归问题,以非常形象的方式呈现给学生。通过启发式教学,对候选产生式的选择进行提问,对候选式的结构特点进行提问,引导学生自己发现问题,自己尝试解决问题的办法。

在讲解的过程中,通过LL(1)文法和非LL(1)文法进行对比分析,充分利用多媒体手段,将语法分析树的分析过程动态化,将每一步的分析过程一点点呈现在学生面前,学生也会不自觉地将自己画的语法树和课件中展示的语法树进行对比,主动参与到教学活动中来,在这个互动的过程中,加强了学生对LL(1)文法的理解。

在此基础上,由回溯问题,可以引入First集的定义,继而Follow集和Select集的定义,引导学生逐步掌握知识要点。

3.4 知识引入课堂练习

在课程讲授过程中,学习者是否 有机会练习和应用他们刚刚理解的知识可以有效促进学生学习。当学生掌握 了语法分析的要点后,开展巩固练习。练习题的难度先易后难,采取递进式的方式给学生,以满足不同层次的学生需要。鼓励学生根据所学到的文法,尝试解决其他形式的文法。在练习的过程中,及时发现学生解题中的问题,及时纠正。与此同时,接受能力稍慢的学生也可以及时进行提问,教师也可以有机会进行单独辅导。通过反馈和指导,增强学生的思维 能力,强调学生对解 决问题的方法与技能的自我理解,自我掌握,强调学生的 个人感受和独特见解。

3.5 知识融会迁移

迁移是已学过的东西在新 情境中的应用。学生能将所学到的语法分析学习知识运用到解决新问题 的情境中,就会产生触类旁通、举 一反三的学习效能。

对于语法分析中抽象的概念和复杂的算法,如果学生只停留在对知识的记忆和理解方面是不够的,需要学生在实践中深入理解并掌握语法知识和相关算法。

因此,在语法分析的实验过程中,将学生分组,以小组合作的单位,采取任务驱动的形式,布置小组完成一个小的编译程序的语法分析过程。

项目内容:从文件中读入文法,从键盘上输入待分析的符号串,采用 LL(1)分析算法判断该符号串是否为该文法的句子

文法要求:文法为LL(1)文法

实现方式:预测分析程序

通过语法分析程序的设计及实现,促使学生“在做中学”“在做中发现问题”,学会把理论知识应用到实际的语言分析中,增强对知识实用性的认识。并且在分组完成任务的过程中,学生也可以将软件工程、程序设计基础等课程的专业知识进行扩展应用。

4 结束语

以五项首要教学原理指导的“编译原理”课程教学实践过程中,充分体现出学生 是学习的主体,而教师则扮演着学习的组织者、引导者的角色。在教与学的过程中,充分激发学生学习本门课程的学习兴趣,提高学生学习的主动性和积极性,努力培养学生的信息收 集与加工能力、抽象思维能力、综合概括能力、从根本上改变学生被动学习的状况,提高了教学效果,使学生达到重视 研究性学习、协作学习、自主学习、独立思 考的目的。

参考文献:

[1] 梁雪松.基于五项首要教学原理指导的教学方法再探究 [J]. 现代教育科学,2011(4):17-21.

[2] 陆一琳.基于五项首要教学原理的微课教学设计浅探[J]..教育理論与实践,2017(36):43-45.

[3] Merrill M D. First Principles of Instruction [J].Educational Technology Research and Development, 2002(3):43-59.

[4] M.戴维.梅里尔.首要教学原理[M].盛群力,译.福州:福建教育出版社,2016:18-46.

[5] 孙素环,赵长伟,孔功胜.首要教学原理在计算思维能力培养中的应用[J].闽西职业技术学院学报,2012(14):82-85

【通联编辑:王力】

推荐访问: 原理 首要 编译 教学实践 指导
本文标题:基于首要教学原理指导的“编译原理”课程教学实践
链接地址:http://www.yzmjgc.com/youxiufanwen/2022/0320/34474.html

版权声明:
1.赢正文档网的资料来自互联网以及用户的投稿,用于非商业性学习目的免费阅览。
2.《基于首要教学原理指导的“编译原理”课程教学实践》一文的著作权归原作者所有,仅供学习参考,转载或引用时请保留版权信息。
3.如果本网所转载内容不慎侵犯了您的权益,请联系我们,我们将会及时删除。

版权所有:赢正文档网 2010-2024 未经授权禁止复制或建立镜像[赢正文档网]所有资源完全免费共享

Powered by 赢正文档网 © All Rights Reserved.。粤ICP备19088565号