虚拟仿真实验在《计算机组成原理与汇编语言》课程中的应用

2020-07-22 09:54刘跃华梁英何静
电脑知识与技术 2020年11期
关键词:计算机组成原理汇编语言仿真实验

刘跃华 梁英 何静

摘要:新工科背景下对信息技术类课程的教学提出了新的要求,虚拟现实与仿真技术的引入将推动了课程教学方法的改革。本文架构了集成化的汇编语言编译环境,采用第三方软件与自主开发相结合的方式来组建计算机组成原理的实验平台,教学实践表明,与传统的实验手段相比,虚拟仿真实验在教学中时效性、受益面等方面具有明显的优势。

关键词:虚拟现实;仿真实验;计算机组成原理;汇编语言

中图分类号:G642 文献标识码:A

为培养和造就一大批引领未来技术与产业发展的卓越工程科技人才,2017年教育部提出“新工科理念”,围绕新工科专业建设,教育部批准设置了人工智能、大数据、网络空间安全等新工科专业以促进了传统工科专业向新工科专业转化。《计算机组成原理与汇编语言》作为新工科背景下的一门重要的专业课程,在教学理念、教学方法和教学手段等方面必须进行改革以适应新时期人才培养要求。虚拟现实技术作为21世纪发展最为迅速、对人们的工作生活有着重要影响的信息技术之一,势必会在高校的教学领域中扮演重要的角色。

1《计算机组成原理与汇编语言》课程的特点与存在的问题

本课程实质上是由《计算机组成原理》和《汇编语言程序设计》两门课程的内容综合起来的,计算机组成原理是一门理论性和实践性都很强的核心专业基础课程,在计算机学科的系列课程中处于承上启下的作用,课程学习为后续课程f如计算机体系结构,嵌入式系统、微机原理与接口技术)的学习、研究生升学考试、就业应聘等环节奠定了坚实的理论基础,具体的教学目标有:

1)掌握定点数和浮点数的表示方法,理解数据表示对软/硬件系统设计的影响;

2)掌握基本算术、逻辑运算部件的工作原理及设计方法;

3)掌握存储器层次结构工作原理,理解存储器层次结构对程序执行性能的影响;

4)了解指令设计的基本原理,掌握指令寻址方式的特点及其对指令执行性能的影响;

5)掌握单周期数据通路、多周期数据通路和流水线数据通路及其控制部件的工作原理和设计方法;

6)掌握组合逻辑控制器和微程序控制器的实现方法。

汇编语言是计算机编程的低级语言,与CPU的指令系统密切相关,常与计算机底层的硬件打交道。目前的指令系统有以MIPS为代表的精简指令系统(RISC)和以Intel x86为代表的复杂系统系统(CISC),我校开设的课程以x86指令系统作为汇编语言教学内容,具体的教学目标有:

1)理解微型计算机的结构及其内部运行过程;2)掌握Intelx86的指令系统;3)掌握MASM指令和伪指令的功能和要求、汇编语言程序控制方法和宏汇编程序的开发过程;4)理解DOS和BIOS的系统功能,能使用其中的主要的功能调用来编写程序;5)理解微型计算机输入/输出控制的主要方式,掌握中断例程的编写。

本校的计算机科学与技术专业、软件工程专业、物联网工程专业和智慧管理等专业和班级都开设了这门课程,以前的实验教学环境采用“爱迪克计算机组成原理教学实验系统(实验箱)”,虽然在该实验箱上可以完成大部分实验,但存在如下问题:一是实验箱中的实验内容不能升级换代;二是不能在课堂教学上使用以实现互动教学;三是不能实现线上教学(如MOOC教学)等。因此,以虚拟仿真的实验来代替传统实验手段是一种合理的选择。

2虚拟现实在课程建设中的应用

虚拟现实技术(VR)技术是20世纪末逐渐兴起的一门综合性技术,涉及计算机图形学、多媒体技术、传感技术、人工智能等多个领域,是仿真技术的一个重要方向。由于VR改变了传统的人与计算机之间被动、单一的交互模式,用户和系统的交互变得主动化、多样性、自然化,因此虚拟现实技术在教育、医疗、娱乐等众多领域有着非常广泛的应用前景。图1是虚拟现实技术的组成结构,大体上是由软件和硬件两大部分组成。

虚拟现实设备包括头盔、数据衣、数据手套、气味发生器、味觉发生器等。“头盔”则由显示器、光学系统、立体声音箱和运动跟踪系统构成。目前,沉浸式虚拟现实具有一定的优势,它可以对现实生活中存在一定局限性的情境和对象进行实验,参与者戴着头盔(HDM)和一副特殊的3D眼镜,以获得虚拟环境的立体视图。高昂的价格一直是HMD在教育环境中使用的最大障碍之一,且大多数学校的计算机的配置不满足的要求,鉴此,我们在构建基于虚拟現实的计算机组成原理实验教学系统时,采用虚拟现实建模语言(VRML)与建模工具(如Unity、Vizard)相结合的方式来实现。VRML是一种虚拟现实建模的标准,运用VRML制作教学课件时可以将文本、多维动画、小视频等多种媒体信息整合起来以再造真实场景,激发学生的学习欲望。通过对实验对象进行建模、数据采集和场景渲染等环节的处理,利用虚拟现实的开发工具可以构建图2所示的课程实验环境。

3虚拟仿真实验平台的应用

3.1汇编语言实验教学平台

在DOS环境下,汇编语言程序的开发要经过编辑、编译、连接和调试等彼此分离的步骤(如图3所示),这样的过程费时费力,学生对DOS的使用相对陌生,尽管Windows保留了DOS的工作方式,但是实验过程中在WINDOWS与DOS之间来回切换会影响上机的效率,也不利于保护模式下的编程教学,我们根据汇编语言实验教学的特点,利用Java语言设计出了一款使用便利、可移植强的汇编语言集成编译系统(如图4所示)。该系统集编译、连接、执行等功能于一体,并提供关键词高亮显示、错误代码导航、代码即时辅助提示、帮助资料以及实验报告生成等功能。该系统不仅可以在实验室作为汇编语言的上机环境,也充当课堂教学和线上教学的实验教学手段。

3.2计算机组成原理课程的仿真实验环境

1)LOCISIM软件的应用

Logisim软件是一款图形化的用于设计和模拟数字逻辑电路的工具(见图5),其简捷的工具栏界面和构建它们时的电路仿真,有助于学习与逻辑电路相关的基本概念,能够从较小的子电路构建更大的系统,并通过鼠标拖动来绘制线路束,因此可以通过使用Logisim来设计和模拟整个CPU。该软件基于Java环境,可以在实验机房、教学网站和个人微机上完成实验。目前有很多双一流高校(如华中科技大学的计算机组成原理慕课)都采用该仿真软件来进行实验教学。

我们在该仿真环境下开展的主要实验项目包括:寄存器组设计、算术逻辑运算单元设计、存储器扩展设计、基于MIPS的单周期CPU设计等实验。ALU设计实验:完成1个32位的加法器;寄存器组设计实验:构建1个基于MIPS的16个32位寄存器组,每个寄存器配置1个WR端口和2个RD端口;单周期CPU设计实验:完成具有10条以上MIPS指令集的单周期CPU设计,该CPU中包含PC、ID、CU、地址形成等部件,采用组合逻辑控制方式产生微命令。存储器的扩展设计:包括位扩展、字扩展和字位同时扩展的实验。

2)CodeCode.net仿真实验平台

该平台是北京英真时代科技有限公司为高校计算机专业提供的一个教学与科研平台,可用于高校计算机专业的新工科建设、虚拟仿真实验中心建设,以及工程教育专业认证、本科教学评估和大规模在线开放课程(MOOC)的开展。该平台可以为教师和学生提供托管服务,教师可以将实验文档、源代码文件托管到此平台,学生也可以将实验报告、设计文档等在此平台进行托管,提供WebIDE功能,使用者无须安装任何客户端软件,可以直接使用浏览器在线完成项目的构建、验证和部署工作。学生使用配套实验软件访问平台时,采用了C/S模式,教师使用瀏览器访问平台时采用了B/S模式,从而充分利用了这两种模式的优点。在教学中,利用该平台的虚拟仿真技术,在没有实际硬件的情况下可以完成表1中的实验。

3)自主开发的仿真实验教学系统

图6是我们利用Java开发的一个微型计算机的实验教学系统,在该系统上可以完成PC机的控制与接口访问的常规实验,在微机原理的课程的实验教学中应用效果较好。

4结束语

目前有些高校配置的计算机组成原理实验系统,虽然满足了计算机组成原理课程的基本实验教学要求,但其实验平台存在一些不足之处,如有实验内容欠丰富、实验平台固定、实验跳线多、原理不透明、功能扩充性不佳等。虚拟仿真技术通过再现一个有较强真实感的仿真教学场景来增强学生对理论知识的掌握,我们结合本校办学条件且充分考虑课程的特色,利用虚拟仿真技术将实验教学扩展到线上与线下相结合的教学模式,能有效地拓展了教学的时效性。通过这些改革措施的实施,取得了较好的教学效果。当然,虚拟仿真教学弱化了计算机硬件知识体验,这些内容可以从相关课程中得到补充。

猜你喜欢
计算机组成原理汇编语言仿真实验
高等学校计算机专业课程教学改革实践——以汇编语言与接口技术课程为例
汇编语言与C语言的混合程序设计技术研究
提高《汇编语言程序设计》教学效率的思考与实践
开展体验式教学创新研究 提高化学课堂有效性
面向计算机系统能力培养的计算机组成原理实验教学
基于多重视阈下的《电子控制技术》课程的教学探讨
用“工程思维”引领《计算机组成原理》课程教学
《计算机组成原理》课程建设的改革与探索
计算数据中心的动态数据聚集算法研究
试论汇编语言与C语言的混合程序设计技术