- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《编译原理》教学过程中的思考与探讨
《编译原理》教学过程中的思考与探讨
【摘 要】本文对《编译原理》教学过程中出现的一系列问题进行了分析,并根据实践,对编译原理课程的课堂教学和实验教学进行了思考和探索。
【关键词】编译原理 教学过程 课堂教学 实验教学
一、前言
《编译原理》是高等院校本科教育计算机专业中一门非常有用的核心课程之一,它对培养学生的抽象思维能力、独立解决复杂问题的能力以及增强编写和调试程序的能力等方面起着很大作用。但是,接触过编译原理的学生和老师都知道《编译原理》是一门难学难教的课程。这门课程的内容比较抽象,理论性很强,不容易理解,而且对实践也有较高的要求。学生普遍认为编译原理不实用,因而也就缺乏了学习的热情与积极性,存在畏难情绪。如何在教学过程中激发学生的兴趣,并解决教学中出现的一些问题,我觉得可以从以下几个方面去思考与探讨。
二、认清编译原理,明确学习意义,激发学生的热情
1.帮助学生认清编译原理的作用和地位
在教学过程中,很多学生都有这样的疑问:编译原理学的是什么?学习它有什么作用?
我们知道,目前的计算机能执行的都是非常低级的机器语言,一个用高级语言编写的源程序最终如何在计算机上执行呢?这就是编译原理要解决的问题。概括地说,编译原理课程介绍编译器构造的一般原理、基本设计方法和主要实现技术。编译原理课程通过编译器的各个组成部分来解释高级语言编写的源程序如何翻译成计算机能够执行的机器语言。这个翻译的过程涉及程序设计语言、机器结构、形式语言理论、类型论、算法和软件工程等方面的知识。例如,对软件工程来说,编译程序是一个很好的实例(基本设计、模块划分、基于事件驱动的编程等),编译原理课程所介绍的概念和技术可以用到一般的软件设计中。
事实上,通过编译原理的学习,有助于学生快速理解、定位和解决在程序编译、测试与运行中出现的问题。另外,编译原理的学习对熟悉编译过程、掌握计算机高级语言的生成机制、理解具体程序的运行状态起着关键作用。
2.帮助学生克服畏难心理,提高学生的兴趣
在教学的过程中,很多学生认为他们今后的工作不会涉及到编译原理的理论和技术,编译原理没有实际的用处,学习起来就非常的枯燥无味。其实这是对编译原理的一种错误认识。该课程中的原理除了可以用于分析编译器以外,还对诸如人工智能、并行处理技术等课程的学习具有指导作用。例如,利用编译原理的理论设计出“翻译风”这样的软件。与此同时编译原理课程可以帮助学生更进一步地理解和综合应用离散数学、高级语言、数据结构、汇编语言等专业基础课程的知识。例如,编译程序应用了多种数据结构,在词法分析阶段使用状态转换图来识别各种单词;在语法分析中使用语法树等来进行语法分析;在存储分配时使用栈式结构和堆式结构进行存储空间的分配。本门课程学习对其它课程的学习和今后很多领域的理论研究具有深远的意义,如计算机软件技术领域、计算机系统结构领域、人工智能系统的机器学习领域、并行处理技术等领域。
鉴于“编译原理”这门专业课程的特点,在教学过程中端正学生的认识,帮助学生克服畏难情绪,肯定学生所具有的能力,让学生明白以他们掌握的计算机知识,有足够的能力学好《编译原理》这门课程。鼓励他们同样可以利用学到的理论技术设计出类似“翻译风”这样的软件,帮助学生建立信心,发挥他们的才智,提高学习的热情。
三、把握课堂教学内容
1.整体把握一条主线,领会每个阶段的精髓,各个击破
编译器(编译程序)可以分为词法分析、语法分析、语义分析、中间代码生成,代码优化和目标代码生成这六个阶段,每个阶段还会伴有符号表管理和出错管理。在第一章编译器概述中就把编译器化分成这六个阶段,同时还简要的描述了这六个阶段各自的任务,这是贯穿整个课程的一个主线,整个课程就是按这六个阶段组织进行的。所以一开始让学生把握这条主线,对课程有一个总体的把握,理解编译的过程。
当学生从整体上理解编译器的结构之后,然后分章节对各个部分进行细致地教学。按照编译过程的划分,把课程分为六章内容,每章都有它的精髓所在,只要掌握了每章的精髓,就能掌握编译的整个过程。词法分析的精髓主要是词法分析的构造、有限自动机理论的应用;语法分析的精髓主要是语法分析的两种方法——自上而下分析法和自下而上分析法;语义分析主要是属性文法、语法制导定义以及翻译方案;中间代码主要描述了中间代码常见的几种表示形式、各种语法结构如何进行语法制导翻译形成中间代码;代码优化主要围绕如何从时间和空间上进行优化,尽可能提高执行的效率展开,分别讲述了局部优化和循环优化;目标代码生成主要是目标代码生成算法的实现及寄存器的分配。这六个部分相辅相成,互有联系,掌握每个阶
您可能关注的文档
最近下载
- 信息系统等保安全方案.doc VIP
- 兴业银行信息技术专员岗位笔试选择题附笔试高分技巧.docx VIP
- 化工设计概论与化工制图课件第四章化工设备常用零部件简介.pptx VIP
- 高等教育5化工制图cad化工设备图中焊缝结构的表达.pptx VIP
- 化工设计概论与化工制图课件第七章车间布置设计.pptx VIP
- 新概念英语入门级6-10单元测试卷.pdf VIP
- 化工设计概论与化工制图课件第八章管道设计.pptx VIP
- 化工设计概论与化工制图课件第十章管道布置图.pptx VIP
- 化工制图cad8管道布置图.pptx VIP
- 统编版语文一年级下册2吃水不忘挖井人 课件(共54张PPT).pptx VIP
文档评论(0)