用“工程思维”引领《计算机组成原理》课程教学
2016-08-15傅篱
傅篱
摘 要: 《计算机组成原理》是大学计算机类专业的一门硬件核心课程,课程的难度和对硬件知识的高要求使得这门课程是公认的较难学的课程。作者就如何培养学生对计算机硬件的学习兴趣、提高教学质量结合自己的工程实践做了探索。
关键词: 《计算机组成原理》 工程思维 教学探索
《计算机组成原理》是计算机科学与技术及信息类相关专业的一门核心课程,这门课程不针对具体机型,而是从计算机系统的组成和结构角度讲述计算机的基本原理,对计算机系统的硬件设计具有理论指导意义。这门课程涉及的基础理论、基本概念较多,有较强的理论性,如果采用一般的教学方法,学生学习起来感到难懂和枯燥,是公认的学习难度和教学难度较高的一门课程。
如何让学生提高对这门课程的学习兴趣、积极思考,努力投入的硬件知识的学习中,我在十多年的课程教学和科研实践中,探索从“工程思维”的角度引领课程教学,取得较好的教学效果,受到学生的欢迎。
一、《计算机组成原理》课程定位
首先,计算机科学与技术专业是一个工科类的专业,它是在计算机这个工业产品出现后,随着计算机软件、硬件技术飞速发展和广泛应用,从而诞生的一个新兴专业。计算机技术的理论、基本原理都和工程技术密不可分。《计算机组成原理》是计算机科学与技术专业中有关硬件部分的核心基础课程。
从产品设计的角度看,计算机硬件设计本身就是一个工程项目或者工业产品,《计算机组成原理》涉及的理论、原理都是在计算机产品发展过程中总结、归纳、提升出来的。所以在学习这门课程时,不能用一种纯理论的学习方法学习,而是要用一种“工程思维”的方式学习。比如在工程设计过程中,不能只考虑产品的性能,而是要考虑产品功能的扩展性、可维护性、产品性价比。《计算机组成原理》课程中的总线技术、Cache技术都体现了这样一种设计思想和理念。同时计算机的硬件结构随着现代电子技术的不断进步在不断改变,《计算机组成原理》课程内容不断更新。
由于计算机硬件是和工程实际紧密相连的,作为指导计算机硬件设计的《计算机组成原理》这门课程就不能像《高等数学》、《数据结构》、《数字逻辑》等课程一样,只是偏重从理论上讲解,而是要从工程设计的角度讲解才能使得学生听得懂、有兴趣,同时也有更深刻的理解。
二、“工程思维”引领教学的具体实践
用工程思维的方式引领《计算机组成原理》课程教学,是指要求学生站在一个工程师的角度思考如何设计一个计算机系统?在设计一个计算机系统时需要解决哪些问题?把整个课程的知识点融入项目设计中。这样就带出目前计算机系统是如何解决这些问题的?通过老师在学生积极思考后的讲解,从而学到相关的理论和方法。
这种以“工程思维”作为引领的教学方法的好处是真正激发学生的兴趣,使得学生带着问题学习。在学习过程中不是死记硬背一些知识点,而是结合问题实质提出解决问题的方案,真正调动学生的主动性,增强学习效果。最重要的是,通过这种方法学生形成一种“工程思维”的方式,了解工程项目的设计思路和设计理念,为学生今后成为合格的工程师打好基础。
由于目前在校的大学生,都是从学校到学校,几乎没有任何工程设计实践的概念,所以在教学中要不断强化学生的这种意识。
下面我以计算机中数据表示这一节为例,具体介绍“工程思维”引领的教学方法。
在这节中我们首先会告诉学生计算机采用的是二进制。大多数学生知道计算机使用二进制,但到底是怎么回事是模糊的。这时我们结合计算机主板电路告诉学生:计算机使用二进制是因为二进制是最简单的数制,在电路上只要“0”和“1”两种电平状态表示,世界上第一台电子计算机设计时开始是用的十进制,是工程师们的不断实践,发现用二进制设计电路更简单、可靠,因而改进成二进制,这样生活中的十进制数,如果要用计算机处理,必须转换成二进制。
这时学生会疑惑,那计算机既然使用二进制,为什么要学习十六进制?我们接着会告诉学生:这是因为我们在实际研发计算机产品过程中如果书写二进制,一个简单的十进制数用二进制表示会很长,这样工程师在书写过程中很容易出错,转换成十六进制后书写简单得多,而且二进制和十六进制相互转换方法也简单。
我们会继续提问学生:生活中的十进制数可以通过转换成二进制由计算机处理,但生活中还有正数和负数呢?计算机又该如何解决符号问题呢?这样顺势讲解有符号数和无符号数在计算机中的表示。
计算机解决了符号问题,计算机的设计师们面临的问题如何解决小数点问题呢?我们又从这个角度讲解定点数和浮点数的表示,告诉学生工程师们是如何巧妙解决计算机中小数点的表示问题。
接下来讲解数据的原码、反码、补码时学生会疑惑:不是有二进制了吗?原码表示不是很好吗?为什么又要学习补码呢?这时我们会告诉学生:计算机开始设计时是用原码,但是发现,如果计算机用原码设计加法电路时会很麻烦,你必须先比较被加数和加数的符号,然后才能确定是做加法而是做减法,而且运算结果的符号要单独处理。如果在计算机的运算电路中采用补码,其加法、减法会统一成加法,符号位可以参与运算,在不溢出的情况下结果正确。在课堂上,通过一个原码加法和补码加法的例子,学生感到补码加法的神奇,激发浓厚的学习兴趣。
另外在《计算机组成原理》课程讲解“系统总线”一章时,我们结合实际产品中的PCI-E和USB总线,告诉学生如果产品设计过程中使用“总线”方法连接计算机各个部件比用“分散连接”方法连接各个部件,产品的扩展性、易维护性会好得多,这是会计算机系统会广泛采用总线的原因。这种从“工程思维”角度切入的教学,使得理论变得生动有趣,不再枯燥无味。
在讲授“存储器系统”一章的“存储器的层次结构”时,Cache技术涉及工程设计的思想,也就是说这些设计理论都是为了实现产品的性价比,解决存储器速度、容量、价格的矛盾。这些课程的讲解如果不结合“工程思维”,不强调工程设计意识,对于从未参与实际设计过产品的大学生们是很难理解和意识到的。
总之,如果我们带着学生以一个工程师的角色,学习和了解计算机硬件在发展过程中出现的理论、形成的概念和解决方案,这样学生在学习过程中的参与意识会强得多,学习兴趣会浓厚得多。这种站在更高角度来学习的《计算机组成原理》,可以培养学生工程设计的意识,为学生们毕业后从事产品设计、项目开发都打下良好的基础。
三、结语
根据美国工程教育协会的定义:工程是一种把科学和数学原理、经验、判断和常识用到造福人类的产品制造中的艺术,是生产某种技术产品或系统以满足特定需要的过程。计算机就是这样一种产品或系统。所以在和计算机有关的专业知识学习中应用“工程思维”引领是一种必然,我们需要探索“工程思维”在计算机硬件学习中的价值,以增强教学效果,同时使得学生通过课程学习获得未来工作中需要的工程思维方式和工程设计能力。
参考文献:
[1]姚爱红,武俊鹏,李丽洁,李静梅,张国印.“计算机组成原理”教学改革与实践[J].计算机教育,2011(10):37-39.
[2]王荣良.信息技术课程之工程思维辨析[J].中国教育技术装备,2012(7):24-26.
[3]胡晓婷,王树梅,任世锦,巩固.提高计算机组成原理教学效果的途径和方法[J].计算机教育,2010(11):97-100.