计算机原理课的过去和现在
一、课程发展沿革
北京理工大学的计算机教育,如果从第一堂“计算机原理”课算起,至今已经经历了52个年头。由于时间久远,又没有留下什么文字资料,所以给这篇文章的写作带来了很大的困难,我先后走访了多名当年的老师和学生,并在学校图书馆的书目检索系统中多方查找,最后才从大家的记忆碎片和网络中整理出了下列线索。
王远老师在1958年11月开始并历时两个学期的计算机原理课开创了北工计算机教学工作先河,也使北工成为国内高校为数不多的最早建立计算机专业的先行者之一。王远老师能在短短的一周时间内领命主讲一门过去没有接触过的新课,在没有教材、没有中文资料的情况下,把计算机的工作原理讲得清清楚楚,受到学生的好评,真是令人钦佩。此后由于工作需要,王远老师不再主讲这门课程,他将开设本课程过程中写成的两本讲课笔记毫无保留地转交给了其他教师。
60年代初,陈为正老师为58级学生讲授计算机原理,据他和当年的学生回忆,当时讲课内容仍是以苏联的大型计算机бэсм为原型,那时已经有了正式出版的教材,32开本,作者名为姚林,可能是哈工大老师(“姚林”是二进制“1”和“0”的谐音,估计是一个笔名)。由于当年专业课程数量很少,故这门课程的学时数很多。除去计算机原理外,还有一门课专讲计算机元件,主要介绍与非门、触发器等基本的电子元件。
文化大革命中,计算机原理课程曾一度按照计算机的几个大的组成部分,被分为运算器、控制器、存储器和外部设备等几门课程,由刘明业、彭玉奎等老师主讲。
由于条件所限,当年本课程主要是理论教学,几乎没有实验,但下厂实习环节却令当年的学生至今不能忘怀。据当事人回忆,当年学生去北京有线电厂(738厂)实习,下车间参加计算机的生产、组装,到机房调机,真刀真枪的干。这种接触实际的极好实践环节,恐怕是当今我们专业学生所无法比拟的。1974级的学生就参加了738厂154机的研制,独立完成了一台154机的生产。在这个过程中,学生同老师一起编写、出版了《DJS-154计算机原理》一书。
恢复高考之后,计算机原理课程一直是本专业重要的专业课之一,讲课的学时数一度达到120学时,由张前焜和高永峰老师主讲。这门课比较早就开始注重教材建设,80年代初,张前焜、高永峰等老师就自编了《计算机原理》上、下两册,由校印刷厂印刷。1984年,张前焜老师编写的《电子数字计算机组成原理》(上、下册)由北京工业学院出版社正式出版,目前在校图书馆中还有收藏。
二、我与原理课结缘的二十多年
本人1984年从西安交大硕士毕业分配到北京工业学院,可能是因为我在读硕士期间曾辅导过一轮计算机原理课的缘故,到北工之后就被分到负责这门课程的902教研室。1986年开始主讲计算机组成原理,从此和这门课结下了不解之缘。
记得当时国外高校计算机专业正在流行IEEE83教程,我们的教学计划也在向83教程靠拢。83教程中并没有计算机原理课,但有一门数字系统设计课和计算机原理课比较接近。为了尽可能按83教程的要求组织教学,系里特地让我在计算机原理课之前为84级讲了20多个学时的数字逻辑,接下来又讲了80学时的计算机原理。当时系里有计算机软件和计算机应用两个专业,每个专业只有一个班。84级是我教的第一届学生,印象特别深刻,至今虽已过去二十多年,但还能叫出这一届许多学生的名字。
1980年代中期,电子部教育司受教育部委托,组织了对全国高校计算机应用专业的教学评估,这是我从教至今经历的唯一一次专业评估。北工被分配参加第二轮评估。第二轮评估共有29所高校参加,评估中对数据结构和计算机原理两门课程进行了统一命题的考试,还对数据结构课程进行了上机测试,我系90852班参加了考试。这次评估对于我这个仅主讲过一轮本课程的老师是一个很大的挑战,记得考试那天我是和参加考试的学生一起等待试卷拆封的,当时的紧张情绪一点也不亚于考场中的学生,不过最后我们的考试成绩相当不错,在这次评估中排名靠前,评估专家对我们学校积极向IEEE83教程靠拢的做法也给予了充分肯定。
1986年我刚讲原理课时,使用的教材是电子工业出版社出版的第二批统编教材中由成电俸远祯教授编写的《计算机组成原理》一书,此教材一共使用了七届,直到1993年我本人编写的《电子计算机组成原理》一书由北京理工大学出版社出版,从那时开始我校一直使用我们自己编写的教材。此书获得校优秀教材奖,经过三次修订,累计发行50000册。
2003年,我的《计算机组成原理》系列教材选题入选了中国计算机学会和清华大学出版社共同规划的“21世纪大学本科计算机专业系列教材”,经过努力,正式出版了主教材和相应的参考书,形成了比较完整的教材体系。其中《计算机组成原理》一书,2004年被评为北京市精品教材;2008年,《计算机组成原理(第2版)》、《计算机组成原理学习指导与习题解析(第2版)》和《计算机组成原理教师用书(第2版)》3本书同时入选教育部普通高等教育“十一五”国家级规划教材;2009年,《计算机组成原理(第2版)》获得兵工高校优秀教材一等奖;《计算机组成原理教师用书(第2版)》是目前国内极少见到的供授课教师使用的教学参考书,特色突出。仅主教材一书,出版仅6年,已印刷十几次,总印数达到65000册。以上教材和参考书在国内已经有几十所大学使用,具有较强的辐射作用和影响力。为了更好地与读者沟通,我还在书上公布了自己的电子邮箱,只要有读者与我联系,无论是老师还是学生,我都会马上给以回复。
从1986年至今,除个别年份外,本人一直主讲这门课,听课学生最少的班仅25个人,最大的班近400多人。经过二十多年的磨练,我主讲的计算机原理课已构成了完整的教学体系和教材体系,形成了自己的教学风格。由于对本课程的研究深入细致,教学质量优秀,教学效果得到了学生和同行的一致好评,本人多次获得校级教学优秀成果奖,被评为三育人先进个人和师德先进个人,获得由学生无记名投票选举的T-more杰出教师称号,并被学生评选为计算机学院“十佳教师”。
三、本课程的现状
上世纪80年代之后,根据教育部计算机科学与技术教学指导委员会的意见,计算机原理课程正式定位于专业基础课,成为计算机以及相关专业本科生的主干核心课程。本课程侧重于硬件,是本科阶段为数不多的涉及到计算机内部构造的课程。本课程是教育部专业教学指导委员会2006年和2007年先后推出的《高等学校计算机科学与技术专业发展战略研究报告暨专业规范》和《高等学校计算机科学与技术专业公共核心知识体系与课程》这两个研究报告中给出的7门公共核心课程之一。从2009年开始本课程成为计算机学科全国硕士研究生入学统一考试专业基础课考试科目之一,更突显出本课程在计算机学科中的重要地位。
由于计算机专业课程的不断增加,计算机原理课在教学计划中所占比重不断下降,由开始时的100多学时,减少至80学时、72学时、60学时、56学时,同时实践环节的学时数不断增加,从开始时的简单部件实验,到计算机组成原理硬件实验单独设课,实验内容也在不断更新和升级。
目前本课程分为理论和实践两个环节,其中理论环节56学时(3.5学分),实践环节32学时(2学分),分别单独设置,单独计算学分。理论和实践环节的比例为1.75:1。理论课程安排在第5学期,全部采用课堂教学方式,以多媒体课件为主,适当使用一些板书。教学中注意与学生的交流和互动,经常会向学生提出一些小问题,请学生思考并回答。讲课中注意多举例,多比喻,将深奥、难以理解的问题与日常生活中的实际例子相对应。实践环节安排在第6学期之后的短学期,以学生动手为主,主要在硬件实验室进行,学生以自然班为单位在指定的时间轮流到实验室,保证每个学生有足够的实验时间。
四、本课程的主要特色
经过多年的努力,目前我校的计算机组成原理课程已经形成了自己的特色。主要特色为:
1、注重课程建设,不断改革创新
计算机组成原理课程现已成为北理工计算机学院的一门品牌课,2009年更被评为校级精品课程。之所以能取得这样的成绩,主要是由于我们注重课程建设,不断改革创新。多年来,我们在计算机原理课的教学内容、教学方法、实践环节、考试考核等方面不断进行探索、改进,有关的改革三次被批准为校级教改立项,多次获得校级教学优秀成果奖。目前本课程教学团队人员相对稳定,课程主讲教师梯队的年龄、学历、职称、教学经历等结构合理。
2、注重教材建设,屡出精品佳作
本课程使用自编教材、教学参考书和实验指导书。主教材为北京市精品教材,主教材、教学参考书(学生用书和教师用书)均为十一五国家级规划教材。主讲教师对教材内容理解深刻,对重点、难点章节把握准确,同时配套的参考书和实验指导书齐全,便于学生使用。
3、课程网站和网络教室建设初具规模
已建成面向校内外的“计算机组成原理”课程的课程网站,包括课程简介、教学大纲、授课教案、授课实况、教师队伍、实践教学、课外科技活动、课程资料等多个有特色的版块。学院网络教学支撑平台的本课程网络教室可向学生提供课件下载、问题讨论等多个功能,并正在积极建设课程试题库,将课堂教学与网络教学有机的结合,为学生提供自主学习、自主测试的环境。
4、课堂教学和实践教学并重
2005年开始,将硬件描述语言引入计算机组成原理实验中,并且开出了“VHDL和计算机硬件模块设计”选修课。将硬件描述语言VHDL、先进的EDA开发工具和技术引入计算机学科本科生教学和实验环节中,目前硬件实验室配置的DE2开发套件与当今国外著名高校使用的软硬件环境基本接轨。
5、积极支持学生课外科技活动
计算机原理课作为硬件类课程的龙头老大,近年来牵头其他硬件类课程,积极创造条件,鼓励对硬件感兴趣的本科生尽早进入实验室开展课外科技活动。从2007年上半年开始依托计算机实验教学中心硬件实验平台创建了硬件类课外科技活动基地,组织学生组队参加全国性电子设计或嵌入式系统设计比赛。两年多时间内,共有37人次获得各种奖项14个,取得了好的成绩。
五、结束语
计算机原理课程在计算机学科中处于承上启下的地位,具有内容多、难度大等特点,随着计算机技术的飞速发展,半个世纪以来计算机原理课程无论是教学内容、教学方法、教学手段和实验内容等都发生了很大的变化,但这门课程始终是计算机专业学生大学四年中最重要的核心课程之一。
我们课程团队的老师们正在不断研究计算机组成原理课程的教学新体系,包括研究本课程与前导、后继课程之间的关系、课堂教学和实践教学关联性等问题,在教学设计、教学内容、教学方法以及教学手段等多个方面加大改革力度,力争把这门课程建设成北京市、乃至全国的精品课程。