一种预习与课堂练习相结合的微机原理教学方法

2018-02-10 19:35桑红石
中国现代教育装备 2018年11期
关键词:微机课堂练习指令

桑红石

华中科技大学多谱信息处理技术重点实验室 湖北武汉 430074

1 课程的地位和教学目的

计算机与人工智能技术飞速发展,是当今最为活跃的技术领域。作为信息类工科专业的学生,全面了解计算机技术相关基础知识是非常必要的。微机原理与接口技术就是其中一门核心基础课程。课程以第一代获得广泛应用的微处理器8086作为对象,介绍了8086微处理器的内部结构、指令系统以及如何构造微处理器小系统。通过课程学习,学生能够对微处理器工作方式建立基本概念,对如何构造微处理器硬件系统和如何编写汇编程序有较深入的了解。课程涉及的知识能够为学生日后进入高性能微处理器设计、嵌入式系统设计或高级软件设计等相关专业进一步学习工作奠定基础。

本课程的教学目的主要包括以下几方面内容。

(1)了解微处理器内部结构,了解微处理器的一般工作方式,分析微处理器指令执行过程及其在外部总线的表现,建立软件(指令)与总线信号(硬件)之间的联系。简单介绍当今高性能微处理器的发展方向,及其与8086微处理器的显著区别之处。

(2)了解构造微处理器系统的方法,包括:如何根据系统的需要构造指定容量和位宽的存储器模块,如何为存储器模块分配地址空间;如何构造I/O接口,如何实现微处理器与I/O接口之间的握手和数据交互,如何为I/O接口分配地址空间。

(3)了解汇编语言的特点和编程方法,明白汇编代码、机器码、微处理器执行的操作、标志位之间的联系,掌握常用的直线、分支、循环、子程序调用、中断等编程方式。简单介绍汇编语言与高级语言的区别和联系。

其中,第一部分主要以了解相关知识为主,第二和第三部分需要通过练习才能较熟练掌握相关的电路设计方法和编程方法。

2 教学过程中发现的问题

高校教学中普遍存在学生学习积极性不高、课堂抬头率较低的问题,甚至有教师开发了抬头率检测软件,对课堂上学生的听讲情况进行监测,这样的举措和课堂点名一样是治标不治本的。在我们讲授微机原理课程的过程中,也遇到类似的问题,尤其是讲解寻址方式和指令用法部分时,由于教学内容理论难度低,容易理解,内容琐碎、相似性高,按照课本内容讲解十分枯燥,学生听课兴趣低,容易分心走神。

对于课程的第二、第三部分教学目标,需要通过练习才能熟练掌握。为此,本校的微机原理教学安排是48个学时的课堂教学,32个学时的上机课程,其中16个学时练习汇编编程,16个学时练习微处理器系统构造。从实际教学效果来看,由于课堂讲授与练习分别安排,学习的知识没有立刻付诸实践,学生通常需要在上机时重新翻看书本,课堂教学效果受到影响。通过分析考卷以及课程结束后的小调查,我们也发现学生的编程能力较低,对指令和汇编程序架构的掌握较为生疏。

此外,部分学生认为课程内容较陈旧,与今后实际工作使用的知识有一定差距,也影响了学生学习积极性。

针对教学过程中发现的上述问题,我们进行了多种尝试[1],不断总结经验,逐渐形成了一套较为有效的教学方法,可以概括为:预习+课堂讲授重难点+课堂练习+课后作业+阶段小测验,其核心思想是:学生通过自学能够比较容易掌握的部分不再进行课堂讲解,而把更多的课堂时间用于练习,强化所学知识。对于指令和汇编程序部分,全部以练习作为牵引,通过合理安排课堂编程练习内容,引导学生自学掌握相关指令和伪指令。本文的第三部分将对教学过程的各个环节进行详细介绍。

3 预习与课堂教学相结合的方法

3.1 预习

我们采用的课本是周荷琴的《微机原理与接口技术》第五版[2],课堂讲解其中的1~8章。在安排课程教学内容时,去除了最大系统、十进制调整指令、循环指令等现代处理器设计中不再使用的设计思想。为了指导学生更好地预习和复习,按照教学内容编写了《预习大纲》,给出每章节需要关注的问题,在学期开始时就发给每位同学。预习大纲分为若干小节,每小节内容大约占据课堂时间30分钟。因此,要求学生每次课前根据大纲预习2~3小节,回答大纲的问题,并将预习笔记拍照发给任课教师。全课程的学习内容均排列在预习大纲中,也就是说课程的系统学习是由学生自学完成的,课堂上教师将仅讲解课程的重点内容和学生较难理解的部分。

3.2 课堂讲解

我们按照预习大纲的顺序安排教学内容。每小节开始时,随机请同学回答预习大纲中的问题,此举一方面可以促进学生预习;另一方面,帮助学生回忆相关部分的课本知识,为下一步的重难点讲解打基础。

重难点部分的讲解与普通课堂教学相似,不同之处在于:注意避免教师讲解时间过长,在适当的地方插入问题,引导大家回忆、思考,并随机请学生回答问题。由于学生已经有了预习的基础,听课过程中更容易抓住重点并能够跟随教师的思路思考回答问题。倘若个别学生无法回答,可以请旁边的学生帮助回答,以保持适当的课堂节奏。

此外,将讲学内容与当前最新的技术发展相结合能够有效激发学生的学习兴趣。在讲课过程中,我们会指出哪些技术和结构目前仍在使用,哪些设计方案受限于当时的封装、集成度等技术,目前随着相关技术的进步已经有了更加先进的解决方案。这些简单的介绍将课本知识与当前最新技术相结合,可以让学生感受到所学知识的价值,并且能够从中汲取有益的部分。

3.3 课堂练习

每小节结束,我们根据本小节的教学内容安排若干道练习题,这些题目可能会综合用到之前的教学内容,让学生能够立刻将学到的知识应用于解决问题。题目不宜过于复杂,并且无须学生上黑板演算,可以采用填空、选择、简答的方式。我们曾经尝试由学生上台编写代码、画流程图、电路图,从教学效果看不理想。这类题目耗费时间较长,倘若学生不熟练,更加影响教学进度和教学节奏。因此,课堂练习以简洁为宜,较复杂的练习可以作为课后作业布置。

通过上述方法,可以使学生注意力跟随教师的思路,并积极参与思考,提高课堂学习效果。

3.4 课后作业

为了减轻学生课业负担,曾经尝试以预习、课堂练习、阶段测验代替课后作业。在学期结束的小调查中,有将近一半的学生表示应当布置作业,以进一步巩固课堂所学知识。因此,我们在近期的教学中增加了课后作业。目前看来,只要通过课堂教学调动了学生的学习积极性,同时进行预习和课后作业并不会给学生造成太大的课业负担,也没有观察到明显的抵触心理。

3.5 阶段小测验

根据教学内容,在一章或者两章结束后的下一次课时会拿出一节课的时间进行阶段小测验。这个环节将已经学习的知识融会贯通,帮助学生检验自己的学习效果,发现不足。同时,小测验也是对教师教学效果的检验,可以根据试卷中反映的问题在今后的教学中有针对性地加强讲解和练习。因此,每次小测验后进行试卷分析是十分必要的,针对错误较多的部分进行讲解,以及在今后的课堂上对相关知识进行多次回顾,这些措施有助于发现漏洞,进一步提高教学效果。

3.6 汇编指令和程序的教学方法

学习指令和程序的关键在于多练习,熟能生巧。因此,我们将第三章汇编指令和第四章汇编程序的内容安排为学生自学,将课堂时间全部用于编程练习。编程练习题难度由浅入深,程序结构由简单到复杂。按照课本上指令的介绍顺序,每次课安排3道练习题。针对每道题目,指导学生自己寻找指令的定义和用法,学习不同的寻址方式,并提醒他们注意容易发生错误的部分。每道练习题后,教师给出参考代码,在讲解代码的过程中穿插、引申知识点。由于这两章内容较多,单纯靠自学很难快速开始完整的汇编程序设计,我们编写了包含变量定义、段定义、段初始化等基本汇编框架的模板程序,指示学生在哪里添加自己的代码,帮助学生尽快开始程序设计,使学生获得成就感并激发进一步学习的兴趣。

除了采用上述教学法,教师与学生之间建立平等交流的关系也很重要。当前的大学生,尤其是重点高校的大学生具有很强的学习能力,他们能够通过网络、书本、社团、课外小组等途径快速获得知识,有广阔的眼界和较强的个性。因此,采用点名签到等强制性措施通常会适得其反。但是,知识本身是有魅力的,学生也具有很强的求知欲,如果教师能够营造平等交流的氛围,展示他们眼界之外的知识,挖掘课程本身的魅力,就能实现良好的互动,达到传递知识的目的。

4 教学效果评估

2016年我们采取上述教学方式,课堂气氛活跃,平均到课率超过95%。从学期结束的无记名小调查来看,学生对教学方式反馈较好。对教学各环节的评价中,参与调查的33位学生,其中24位学生认为预习有助于课程学习,占72%;27位学生认为教师讲解环节对学习有帮助,占82%;30位学生认为教师只讲解重难点内容不影响课程学习,并且会促进更好地预习和复习,占91%;30位学生认为课堂编程练习方式较好,占91%;31位学生认为阶段小测验有助于提高学习效果,占94%;23位学生认为试卷讲解和试卷订正环节比较好,占70%。从考试成绩来看,学生成绩有一定提高,不及格率下降。

在存在的问题方面,由于2016年没有布置课后作业,有15位学生认为应当增加作业以巩固学习效果,占45%。2016年汇编指令与编程部分采用的是预习+课堂讲解+课堂练习的方式,并额外设置了两次课堂编程,但是期末小调查中几乎所有的学生都反映编程练习不足。因此,在2017年的教学中我们增加了课后作业,并将汇编指令与汇编程序部分的全部课堂教学改为课堂编程练习,记录每位学生每个练习的完成情况。目前看来,大部分学生表现出很高的积极性,并且能够按照进度要求完成每次课安排的练习。不能当堂完成的,我们会要求课后继续调试,并在下次课上课时演示给老师看。随着练习的深入,学生自学能力和编程技巧逐渐熟练,有些题目甚至无须讲解就能通过翻阅课本自行完成。

教学过程中我们发现,采用上述教学方法,课堂人数不宜超过40人。如果增加学生人数,必须相应配置助教以帮助教师对学生进行编程指导、检查和记录。

5 结语

一直以来,提高高校课堂教学效果都是高等教育探索的重要方向,很多教师针对其所在专业的特点提出了新颖的教学方法,例如“三明治教学法”[3]“翻转课堂教学法”[4]“微助教”[5]“对分课堂”[6]等,在各自的领域取得了很好的教学效果。有些教学法我们在微机原理教学过程中进行了尝试,但是发现不完全符合本校、本专业的特点,难于把握课程进度。经过分析我们认为,微机原理教学的重点在于练习,应通过“学以致用”提高学生对知识的掌握程度。因此,我们在教学中根据学生的反馈和教学效果不断摸索,提出了“预习+课堂讲授重难点+课堂练习+课后作业+阶段小测验”的教学方法,从现阶段来看,取得了一定成果。本人从事微机原理课程教学的时间有限,教学方法还在不断完善中,仅仅介绍一点浅薄的经验供大家参考,同时也希望抛砖引玉,能够得到其他老师的宝贵意见。

猜你喜欢
微机课堂练习指令
“双减”背景下提升小学数学课堂练习效率策略研究
电解电容对微机保护开关电源寿命影响及其优化策略
小学数学课堂练习设计的思路
《单一形状固定循环指令G90车外圆仿真》教案设计
荷塘区民办学校首试“微机派位”
优化课堂练习,打造高效数学课堂
项目驱动式微机原理及接口技术教学方法
浅谈小学低年级课堂练习的设计原则
中断与跳转操作对指令串的影响
一种基于滑窗的余度指令判别算法