雷 冲,梁 丽
(1.四川文理学院 智能制造学院; 2.四川文理学院 招生就业处,四川 达州635000)
《计算机组成原理》这门课程是计算机科学与技术、信息安全、物联网工程、数字媒体技术等专业本科人才培养体系中的核心专业基础课程.该课程作为计算机专业研究生入学考试专业基础综合科目之一,是培养学生深入理解计算机基本工作原理、建立计算机整机概念必不可少的部分,是整个计算机学科和计算机系统中最重要的基础和核心,在整个课程体系中起着承上启下的作用.该课程具有知识面广、内容多、概念抽象、难度大等特点,学生普遍反映难学,教师也感觉难以达到良好的教学效果,那么如何改变这一现状值得我们广大教师探讨和研究.[1-3]
《计算机组成原理》课程因其具有知识面广、内容多、难度大、抽象等特点,因此在教学工作中常会出现如下问题:
该课程的先修课程模拟电路、数字电路具有一定的难度,部分学生没学好,导致在本课程中与之相关的原理理解不透彻,降低了学生的学习积极性,学生在学习过程中觉得该门课程枯燥抽象,原理复杂不易理解,知识点多,在学习过程中普遍存在畏难情绪,没有信心,缺乏耐心等情况.
计算机专业的学生对该门课程的重要性上存在认识上的不足,认为他们将来会从事软件的开发,学不学好硬件并不重要,加之软件方面的人才现今需求量更大,更加重了他们“硬件不重要”的错误认识,在刚开始学习这门课程时学生经常会问学这门课有什么用,学生学习兴趣上的不足是无法学好该门课程的重要原因.
事实上,只有对计算机组成原理有深刻的理解,软件设计者才能设计出优秀的软件.同时该课程也是学好后续课程如:《微机原理》、《计算机体系结构》、《单片机原理与接口技术》、《嵌入式系统原理》、《操作系统原理》、《编译原理》的关键.[4-8]
基于以上分析,如何让学生从课程一开始就明白该门课程的实用性,激发学生学习该门课程的兴趣,从而让他们去主动学习计算机专业的相关知识.
有句俗语“听到的很快就会忘记,看到的才能理解,只有动手做过才能掌握”,因此笔者在教学方法上对应的采用“讲授法”、“演示法”、“实验法”.其中的关键在于演示法--只有学生理解了才能够掌握.C 程序设计语言一般会安排在该课程之前学习,笔者结合计算机组成原理在C 语言中的实际应用来谈谈演示法.
在讲解第二章“数据的机器层次表示”时,引入C 语言中单精度浮点数来讲述IEEE754 标准浮点数,如图1所示.
图1 单精度浮点数如何在内存中存放
在讲解第三章程序控制类指令时,由于学生理解起来很抽象,我们通过C 语言中的if 语句的反汇编来讲述转移指令,如图2所示.
图2 转移指令如何改变程序的执行顺序
在讲解第五章主存储器的组织时,我们通过C语言中的结构体字节对齐来讲解数据在主存中的存放以及大小端方案,如图3所示.
图3 结构体字节对齐
通过多次的教学实践结果表明,本文提出的教学方法--演示法,不仅能在本门课程学习的初始就有效消除学生们对专业基础课学习的畏难心理,还能激发他们学习计算机知识的强烈兴趣,充分调动其学习的主动性,达到自主学习的目的.