“编译原理”课程的教学研究.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
“编译原理”课程的教学研究   摘要:“编译原理”课程是计算机科学及相关专业的一门重要专业基础课程,但由于其理论抽象、算法复杂,加上目前本科学生中普遍存在的各种思想误区,教学效果不甚理想。本文针对这一现状,从如何提高学生学习兴趣,搞好课堂教学,加强实践环节等方面入手,提出了相应的对策。   关键词:编译原理;课堂教学;实践教学   中图分类号:G642 文献标识码:A      “编译原理”课程是计算机专业必修的一门重要的专业基础课程,也是计算机系统软件中非常重要的一个分支。学习和掌握编译程序的基本构造原理和实现技术,将为计算机专业学生进一步学习、研究和工作奠定坚实的专业理论基础。但该课程内容有一定深度和难度,涉及其他课程知识较多,学生在学习过程中感到内容抽象、算法复杂,因此,“编译原理”被普遍看作是计算机本科教学中既难教又难学的一门课程。这主要是因为:(1)本课建立在多门前修课程基础上,并要为后续课程提供理论和实践基础。这些理论的学习有一定难度,学生要在编译课程中融会贯通比较困难;(2)本课程涉及的算法多而复杂,学生想深刻理解算法的思想很困难;(3)学生普遍认为学习该课程仅是为了构造编译程序,很难认识到其在培养自己掌握科学方法和形成严谨思维方面的潜在价值,因此感觉课程枯燥,望而生畏。   针对以上情况,笔者借鉴国内外“编译原理”课程的教学经验,对如何改进教学方法和提高教学效果做了一些研究和探索,并取得了良好的效果。      1明确教学目标,提高学生学习兴趣      “编译原理”课程专门介绍如何将高级语言翻译为低级语言的编译程序的工作原理和方法。不同于一般的应用程序,编译程序是一个十分庞大和复杂的系统软件,它所包含的算法建立在高级语言或汇编语言基础上,综合运用编译理论及多门前修课程,如“数据结构”、“离散数学”、“计算机组成原理”等相关知识,解决高级语言在机器上运行的实际问题。因此,这门课程也可以看作是“软件工程”学习的一个实例。这门课程的内容丰富,各部分内容间具有严密的逻辑性,不但可以使学生真正了解计算机的工作过程,认识计算机信息处理的实质,还可以综合运用所学的软件设计技术分析解决问题,提高计算机软件素质。   作为系统软件,编译程序在性能上有严格的要求,这使得它的算法都很经典、高效,而这些算法、思想和实现技术也可广泛应用于一般软件的设计实现,对提高学生元级程序的设计能力和开发大型软件的能力是十分有益的。如正规式在XML查询技术中的广泛应用、有穷自动机在字符串查找中的运用、必经节点算法在网络中的运用、由文法来定义网络协议等。教师可以鼓励学生尝试将编译程序中的各种算法和技术应用到各个领域,激发学生的创造性思维,培养学生的创新能力。      2注重理论教学,开拓学生学习视野      “编译原理”的理论性强,内容丰富且抽象,具有严密的逻辑性,应用其他课程知识比较多。要在有限的课时内很好地完成本课程的教学,除了要注重教学的方式方法外,还要优化教学内容,将理论性与实践性相结合、时代性与实用性相结合、科学性与通俗性相结合。   2.1把握联系,启发学生积极思维   “编译原理”是一门综合性很强的课程,它的理论教学首先要考虑、分析各门课程的内在联系,增强课程的总体效能,达到事半功倍的效果。   “编译原理”与前修课程间的联系如图1所示。作为“编译原理”课程的前修课,如程序设计语言、形式语言与自动机、算法设计与分析等,既是编译技术理论的基础,也是编译技术的分析对象和实现手段。教师可以从知识体系的内部结构入手,将先修课程的内容贯穿始终,并不断强化和深入,以加强课程的系统性,培养学生的全局观。同时还要把握编译过程各个功能阶段的内在联系和规律,有目的地设计问题,有意义地提出问题,通过问题把编译原理中的理论难点、抽象概念引导出来,学生通过回答问题,从不同的角度寻求解决问题的原则、途径和方法,加深对编译理论和技术的理解。      2.2实例演示,形象化抽象理论   “编译原理”的概念和定理很多,再加上大量复杂的算法,抽象程度很高,要获得良好的教学效果,必须借助形象化教学手段,使抽象的理论具体化。   一方面,形象化教学可以通过实例类比来实现。例如,把编译原理与某种高级语言(如C语言),甚至可以是自然语言(如英语)联系起来,用课堂上学到的理论知识对该语言的语法和词法结构加以分析。这样不仅可以使学生深入了解高级语言的工作原理,做到知其然更知其所以然,更能使学生切实体会到编译原理的实用价值。如编译原理中词法分析的学习就可以以C语言中的实数为例,画出能够识别实数的状态识别图,并用程序实现。通过这个简单实例,学生很快就能了解词法分析在整个编译过程中的作用。   另一方面,教师可以借助多媒体辅助教学,把原理

您可能关注的文档

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档