高职院校《汇编语言程序设计》课程教学改革的研究
2020-01-11
(重庆工业职业技术学院 重庆 401120)
0 引言
《汇编语言程序设计》是计算机专业的一门主干课程,汇编语言是与计算机硬件相关的低级语言,也是计算机组成原理、微机原理与接口技术等课程的先行课程。汇编语言程序设计有助于加深学生对编程的理解和对计算机体系结构的认识。汇编语言编程有其自身的特点,占用空间小,运行速度快,可直接在硬件上运行。但汇编语言也有缺点,如需记忆内容多,指令繁杂等,学生普遍反映编程效率不高,程序难以编写,不容易掌握。
从高职院校的办学目的来看,目前对计算机专业需要的人才是生产、建设、服务第一线的高级应用型人才,学校的教育教学应以应用技术加实践锻炼为主。汇编语言程序设计贯通计算机硬件、软件知识,对学生深入认识计算机软硬件有极大的实际意义,需重视本门课程的教育教学改革。本人通过《汇编语言程序设计》的教学实践,分析汇编语言的编程特点,认真总结教学经验,针对学生学习过程中产生的各种问题,提出了几点课程教学改革的方法和建议。
1 教学现状
汇编语言是用于人和计算机交流的一种语言工具,也是一种面向计算机编程的低级语言,编程过程中有其对应的特定指令。它与其它高级程序语言相比,指令相对琐碎,指令使用方式较复杂,指令实现功能简单,应用场合相对较窄。这些缺点使得学生对汇编语言学习积极性不高。但大学计算机教育应当注重学生的全面发展。汇编语言是直接应用于计算机硬件的语言,能让学生综合了解软件和硬件之间的关系,在计算机硬件和软件知识之间搭建起一座桥梁,在了解硬件原理的基础上更能理解软件的编译和执行过程,对软件的认识也进一步深入。
随着windous、unix及linux等操作系统的相继出现和逐步成熟,应用汇编语言编程的DOS操作系统逐渐退出主流操作系统的行列。这也让汇编语言课程的学习所面临许多问题。目前,绝大多数高校所开设的汇编语言程序设计课程的仍然使用DOS操作系统,学习8086汇编语言。随着时代的进步,汇编语言的教学内容更新速度滞后,应当加快课程的改革,跟上计算机软件和硬件的更新换代的速度,努力适应当前的计算机新技术。
2 理论环节的教学改革
2.1 加入企业实例和技术发展的内容,诱发学生兴趣
在理论教学中,列举一些相关大企业的发展及企业技术变革的实例,讲这些实际案例融入到教案中,丰富课堂教学内容和趣味性,使学生能够了解本门课程在实际企业中的应用,了解课程内容在未来的发展方向和前景。以举例的方式,缩短学生和课程知识的距离,避免过于抽象化的讲述,从实际出发,激发他们的学习兴趣。
2.2 打好计算机理论知识基础
汇编语言是需在理解计算机底层知识的前提下,通过使用相应的编程语言实现对计算机的控制。因此,掌握计算机运行的基本原理和拥有良好的程序思维是学好汇编语言的基础。首先,汇编语言的理论教学要做好对计算机基础知识的回顾,这包括计算机的硬件结构,如CPU、内存、总线等,计算机内存地址及其分配情况等知识;其次,在开始学习汇编程序的时候,需回顾操作系统的原理,及其编译器、应用程序之间的关系;最后,还要带领学生,回顾汇编语言程序执行的流程,让学生先从整体上把握汇编语言程序设计执行的基本过程。
2.3 MOOC结合翻转课堂提高教学效率
目前,MOOC越来越多的应用在专业课课程的教学中,MOOC的优势很多,它具有丰富的课程资源,学习工具多元化,还可以突破传统课程时间和空间的限制,学生学习更加自由。汇编语言课程可以将课堂教学与新兴的 MOOC和翻转课堂等新的教学方法结合在一起,寻找更加合理的教学方式开展教学活动。
在使用MOOC或翻转课堂教学模式之前,教师应当做好课程内容的划分工作。其中,教学内容较多,学生不易理解的知识还是应当以传统教学方法进行教学,便于学生理解并随时提出问题、解决问题。这部分知识,完全使用MOOC学习,无法取得好的学习效果,容易使学生一知半解;而一些相对独立的知识点,在教学过程中可以划分成专题,采用MOOC的教学方法。首先,要求学生通过MOOC学习相关专题内容;随后,让学生带着学习后的疑问进行课堂讨论,教师进行答疑。在课后,要求学生结合MOOC学习成果,完成实践编程任务,检测是否掌握相关知识。
2.4 对比高级语言丰富教学内容
根据大部分高校的课程设置,大部分学生在学习汇编语言程序设计之前,已经接触一种或多种高级语言的程序设计,如C、Python或Java语言等,具有一定的编程基础的同时容易形成编程思维定式。而汇编语言的编程思路和高级语言编程思路有一定的区别,且编程量大,需要记忆的内容多,因此对于掌握汇编语言的编程是有一定难度的。这就要求教师在带领学生学习汇编语言的过程中,能够将汇编语言与高级语言的类似知识点进行对比,如汇编语言的循环语句和C语言的循环语句一对比,学生就能马上找出区别。这样的方式不但能加快学生掌握汇编语言的知识点,同时还能够避免学生对不同种编程语言的混乱使用。
另外,汇编语言作为一种低级语言,它的语法规则有其特殊性,相比高级语言更加琐碎,语法繁多不容易记忆。如果过多地强调语法,学生不容易记忆并且在实际编程中容易发生混乱,容易让学生产生记不住、学不会的感觉。其实在编程过程中,够用即可。因此在教学中应当注意,仅向学生介绍必要的语法知识即可,不要过分强调语法的全面性。
3 实践环节的教学改革
汇编语言是一门理论与实践相结合,且实践性非常强的课程,学习汇编语言的主要目的就是会使用汇编语言解决实际问题。因此,本课程要求学生能够掌握汇编语言源程序的编译、汇编、连接和调试,并灵活应用。本课程需要分配单独的实践课时,指导学生完成课程实践任务。
实践过程中的一大难点是,大部分学生没有接触过DOS操作系统、且不习惯单调的命令行操作方式,对调试程序(DEBUG.EXE)不熟悉。这就需要教师在实践教学中,补充这一系列的知识缺失,并引导学生多动手练习。
另外,在实践教学的改革中,应当注意加强实践环节的实用性。传统的汇编语言实验中验证性实验占大部分。这些实验包括调试、观察程序运行过程、参照课本示例编程、预测执行结果、将程序代码补充完整等。这些实验的主要目的指导学生掌握汇编语言程序的语法使用,但这些验证性实验没有实用性,学生做多了容易失去兴趣甚至照着书本抄,缺乏思考。因此,在完成必要的几个验证性实验以后,需要设计较实用的编程课题发布给学生,鼓励学生思考后独立完成,如难度较大,也可分组讨论完成。加强实践课题的实用性和综合性,能大大的提高学生积极性。
4 结束语
以上,是作者在汇编语言的教学过程中,不断摸索和总结的几点教学方法和改革措施,旨在提高学生学习汇编语言的兴趣,促进学生对汇编语言的理解,加强学生的实际应用能力,对汇编语言课程本身和后续课程的开展,起到了促进作用。
对高校教学工作而言,课程教学改革是一个长期比并且不断持续的过程。特别是信息领域,我们处在一个信息技术高速发展的时代,既是机遇也是挑战,如何培养能跟上时代步伐,服务于社会的应用型人才,是每一位高校教师都要思考的重要课题。这就要求我们的教师,在理论与实践教学的改革过程中,不断探索不断进步,把握时代脉搏,紧跟时代步伐,以学生能力的培养为中心,思考教育教学改革的方法,将学生培养成合格的专业人才。