“汇编与接口技术”教学与实践方法研究
自2010年开始,北京交通大学计算机学院将“汇编语言”和“接口技术”课程合并成“汇编与接口技术”,要求在原有两门课程内容基本不变的情况下,重新优化新课程的教学方案,并要体现出课程的先进性。因此如何规划课程内容,促进理论与实践教学紧密结合,提高课程的教学水平就成了设计和规划新课的关键。通过两年多的教学实践证实所采用的教学方案是有效的。
一、以提高实践能力为导向的课程规划
在总结以往教学工作中的经验和教训基础上,我们对新课程的规划达成了共识,即坚持以提高学生实践能力为导向的课程内容规划方式。[1]
1.汇编语言要重视基础知识的掌握和应用
汇编语言教学要加强对计算机体系结构的认识,重视基础知识的掌握和应用,理解指令和硬件之间的互动关系,以便为后续课程的教学打下良好的基础。
汇编语言仅靠书面作业是很难深入理解指令的内涵和掌握程序设计技巧的,要坚持理论、实践、再理论、再实践这个过程,尽快引导学生将理论与实践结合。为达到此目的,我们在涉及指令的第一次课后就安排了汇编语言调试工具debug的实验;并随后要求学生对每条指令和课堂上讲过的程序(包括作业)在debug或dos环境下进行测试,观测变量和标志位的变化。通过理论学习和实验验证相结合的方法,学生很快掌握了汇编语言的基本内容和程序设计方法。wwW.133229.coM
2.接口技术要坚持以案例驱动的教学方法
坚持以案例驱动的教学方法,就是在学生掌握必要基本概念的基础上,以问题为核心、以案例为基础设计教学过程的教学模式。[2]在教学中我们根据各章节的特点设计了很多教学案例,包括定时器控制蜂鸣器发声案例、定时器产生日时钟案例、定时器产生pwm波形案例、并口控制步进电机案例、并口在0或1方式下交换数据案例、中断控本文由论文联盟http://收集整理制器与并口或定时器结合的中断控制案例、微机之间串口通信案例、rs485方式通信案例、ad0832多目标同时控制案例等。通过对以案例驱动的教学模式的实践,感受到学生参与分析和讨论问题的热情提高了,掌握课程内容的能力增强了,同时学生对硬件课程的兴趣和解决实际问题的能力也得到了提升。
3.课程内容要与时俱进
随着计算机技术的高速发展,传统的教学内容已不能满足当今需求,而课程内容的更新也势在必行。为此我们将新技术pci总线和usb总线引入到教学中来,使传统的课程赋予了新的内涵。[3]
pci总线和usb总线的引入不能只停留在概念层面,要针对学生在理解时序控制和总线协议中存在的困难开展教学活动;重点加强对pci和usb总线协议的理解,并结合传统的eisa总线分析pci总线与它们的区别和联系,分析总线“桥”的作用和工作原理。虽然这部分内容没有开展实验,但它是研究性教学的重要部分。通过专题讨论,学生对新技术有了更深入的认识。
二、接口教学要强化关键知识点的理解
帮助学生掌握重要的知识点是学好课程的关键,也是引导学生深入思维、提升创新能力的重要教学环节。
1.强调in和out指令与硬件的互动关系
在接口的控制中常用的两条指令是in和out。很多学生并不知道这两条指令执行过程中如何会引起接口信号的变化,从而引起cpu与io之间的数据交换。为使学生建立软硬件之间的互动概念,应重点讲清楚in和out指令的三个基本要素;即in和out指令在执行过程中,首先cpu会将指令中涉及到的端口地址送到地址总线上,译码后选定要操作的端口;同时会产生/ior或/iow有效控制信号,控制数据的流向;此时out指令会把数据送到数据总线上,而in指令会从数据总线上获取数据。学生掌握了这些知识点就能深入理解软硬件的互动机制,为接口的设计奠定基础。
2.注重对中断控制器8259端口寻址方式的理解
中断控制器8259内涉及到了十多个端口,但片内地址只有一根线a0,如何用一根片内地址线寻到那么多的端口呢?学生很难理解这个问题。为了讲清楚这些概念,可以结合8259采用的端口译码片内地址a0、特征位、初始化顺序、先送地址后数据等多种寻址方法,并结合其他接口芯片的寻址方法进行归纳和总结,进而深入理解8259的端口寻址过程及特点。通过对该知识点展开分析和讨论,使学生对接口中的所有寻址问题有更深刻的认识,同时对接口电路的设计也是有帮助的。
3.加深对dma主从模式下ior\、iow\、memr\、merw\信号的两面性特征的认识
无论是cpu还是dma,都可以完成存储器与io之间的数据传输。实际上,在存储器与io交换数据时,作为当事的双方并不关心谁在控制它们之间进行数据交换,只要满足总线数据读写时序,存储器和io就可以完成数据交换。从这个意义上讲,如果dma能模仿cpu对总线的读写控制时序,自然也就能达到数据交换的目的,只不过cpu是通过软件方法实现,而dma则是通过硬件方法实现。因此在教学中应强化对dma的四个信号(ior\、iow\、memr\、merw\)在主从模式中所表现出来的差异,仔细分析cpu控制下完成存储器与io交换数据的机理以及dma模拟这些过程所必需的硬件信号和它们在不同模式下的作用。这不仅能使学生容易理解dma的工作原理,而且也能使学生加深对计算机设计中软件和硬件互相替代规则的认识,为设计计算机系统中的主控器提供很多思路。
4.从ad转换器的查询和中断方式来看软硬件的相互配合