EMU8086软件在微机原理及接口技术教学中的应用

2015-10-17 08:56蔡文霞史源平孙宏强
石家庄学院学报 2015年3期
关键词:接口技术微机寄存器

蔡文霞,史源平,孙宏强

(石家庄学院 物理与电气信息工程学院,河北 石家庄 050035)

EMU8086软件在微机原理及接口技术教学中的应用

蔡文霞,史源平,孙宏强

(石家庄学院 物理与电气信息工程学院,河北 石家庄 050035)

寻址方式的理论教学在微机原理及接口技术课程的教学过程中起着重要的作用,它是连接硬件和软件的纽带.在寻址方式的理论教学中通过EMU8086软件随堂演示各种寻址方式,即能激发学生的学习兴趣,又能让学生对寄存器、存储器、8086指令系统等产生感性认识,真正将软件和硬件结合.

EMU8086;寻址方式;理论教学;场景演示

0 引言

微机原理及接口技术课程是电气、通信、电子等工科专业必修的1门专业基础课程,该课程对学生建立微型计算机系统的整体概念和使学生获得应用微机系统软硬件开发能力等方面具有重要的作用,但同时该课程也是师生公认的“既难教又难学”的课程[1].在该课程的理论教学过程中,由于寻址方式涉及到微处理器内部的寄存器和存储器的存储方式、微型计算机的工作原理、指令系统等内容,涉及到的内容既有软件知识又有硬件知识,学生很难理解和掌握.为了使学生能够更好地理解微型计算机各部分的关系及工作原理,同时提高学生的程序设计能力,在寻址方式部分的理论教学过程中引入了EMU8086场景演示教学,在课堂上通过EMU8086软件随堂演示各种寻址方式,即能激发学生的学习兴趣,又能让学生对寄存器、存储器、8086指令系统等产生感性认识,真正将软件和硬件结合.

1 EMU8086软件简介

EMU8086-Assembler and Microprocessor Emulator是一个可在Windows环境下运行的8086CPU汇编仿真软件[2].它集成了文本编辑器、编译器、反编译器、调试器、虚拟设备和驱动器为一体,并具有可视化的工作环境,在调试器中单步或连续执行程序,在程序执行中动态观察各个寄存器、标记位及存储器中的变化情况.还提供了诸如交通灯、步进电机等一些虚拟外设,是学习Intel 8086微处理器的工作原理及进行汇编语言程序设计较为理想的工具.

2 EMU8086在寻址方式理论教学中的应用

微机系统是由软件和硬件构成的1个复杂有机的整体,要想很好地理解和掌握这个有机的整体,就得理解和掌握微处理器系统中的寻址方式.所谓寻址方式,就是指寻找指令及操作数地址的方式.指令一般由表示操作数性质的操作码和表示操作对象的操作数两部分构成.Intel86系列微处理器中介绍了6种基本寻址方式:立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、变址寻址和基址加变址寻址.以下通过几个典型的授课案例来说明如何将EMU8086场景教学融合在寻址方式的理论教学中[3].

2.1 利用EMU8086场景教学讲解立即寻址方式及其教学效果

立即寻址方式是指将所要寻找的操作数直接放在指令中,它紧跟在指令操作码的后面,与操作码一起放在代码段区域中[4].下面以指令“MOV AX,3000H”为例,该指令是1条具有立即寻址方式的8086指令,该指令执行后会将立即数3000H传送到寄存器AX中.

在立即寻址方式的理论讲解中涉及到8086CPU内部的CS,IP,AX等寄存器,以及操作数在存储器中的存储位置.如果只是单纯的理论讲解,非常抽象,无论怎样解释仍有学生不理解代码段在什么位置,操作数放在代码段什么位置等等抽象问题.针对这些问题,如果在讲解完立即寻址方式的功能后,利用EMU8086场景演示,如图1所示,在“MOV AX,3000H”指令执行前,由CS寄存器的内容为0700H及IP寄存器的内容为0100H可知,目前指令在代码段存放的物理地址为:07100H,在07100H-07102H代码段的3个字节中存放着:B8 00 30,即为指令 “MOV AX,3000H”汇编后的机器指令,B8为指令的操作码,00 30为操作数3000H,操作数紧跟在操作码的后面存放在代码段,指令执行前AX寄存器的内容为“0000H”.指令执行后,AX寄存器的内容为“3000H”,如图2所示.这样的场景演示使学生能够直观形象地理解代码段所在位置,以及立即寻址方式中操作数所在存储位置,从而理解立即寻址方式的功能[5].

图1 立即寻址方式指令执行前存储器和寄存器的状态

图2 立即寻址方式指令执行后AX寄存器的状态

2.2 利用EMU8086场景教学讲解寄存器间接寻址方式及其教学效果

寄存器间接寻址方式是指操作数一般存放在存储器的堆栈段(SS)或数据段(DS)区域中,操作数的偏移地址(EA)在指令指明的寄存器中(BP,SI,DI,BX)[1].

1)场景设置

执行以下程序段讲解寄存器间接寻址方式:

在上述程序段中定义了堆栈段stack,代码段code.

2)利用EMU8086场景演示

如图3所示,在代码段code中,机器指令BD 03 00为指令“MOV BP,03H”经汇编后生成,立即寻址方式指令执行后该指令给寄存器BP赋予新值0003H,在此能够使学生加深理解和掌握立即寻址方式,体会到立即寻址可以用来给寄存器赋初值[5].

机器指令8B 46 00为指令“MOV AX,[BP]”汇编后生成,寄存器间接寻址方式,8B 46机器指令指出采用寄存器BP存储操作数的偏移地址(EA)0003H,操作数存放在堆栈段中,指令完成将操作数传送到寄存器AX中[3].由由图3可知操作数所在的堆栈段段基址SS寄存器内容为0710H,偏移地址BP寄存器内容为0003H,由图4可知,堆栈段0710∶0003H连续两个存储单元中存放的数据为34 12,可见通过寄存器BP存放操作数的偏移地址0003H,在堆栈段中找到了指令中要传送的操作数1234H.

如图3所示指令“MOV AX,[BP]”执行前寄存器AX内容为0000H,指令执行后如图5所示,寄存器AX内容更换为1234H.

以上的场景演示过程[2]能够激发学生的学习兴趣,更重要的是在演示过程中能够使学生带着问题一步一步去思考问题,求解问题,直观形象地观察到结果,更加深刻地理解各种寻址方式,能够将微机系统中的软件和硬件有机地结合在一起,使学生初步建立起微机系统的整体概念[4].

图3 寄存器间接寻址方式指令执行前代码段和寄存器的状态

图4 堆栈段中存放的操作数

图5 寄存器间接寻址方式指令执行后AX寄存器内容

3 结束语

多年的教学实践经验表明,在微机原理及接口技术理论教学中,不能只是单纯地讲解理论知识,在其中穿插EMU8086演示场景,能给学生带来最直观的回答和解释,从而激发学生的学习兴趣,提高学生的学习主动性,进一步培养学生提出问题、分析问题、解决问题的实践能力.

[1]刘娟,黄忠.《微机原理与接口技术》教学现状与改进[J].安庆师范学院学报,2014,20(1):129-131.

[2]李艳芳,唐云.EMU8086和Debug在《微机原理》课程教学中的应用[J].湖南科技学院学报[J],2013,34(8):41-43.

[3]王志军,杨延军,王道宪.微机原理实验课程内容的层次化设计[J].实验室研究与探索,2012,31(1):105-107.

[4]徐惠民.微机原理与接口技术[M].北京:高等教育出版社,2009.

[5]温阳东,鲍远慧,林勇.微机原理及应用课程中8255A的教学方法探讨[J].计算机时代,2013,(7):69-71.

(责任编辑 钮效鹍)

Application of EMU8086 in the Teaching of Microcomputer Theory and Interface Technology

CAI Wen-xia,SHI Yuan-ping,SUN Hong-qiang
(School of Physics&Electrical Information Engineering,Shijiazhuang University,Shijiazhuang,Hebei 050035,China)

The theory teaching of dressing mode in the course of the microcomputer principle and interface technology plays an important role,which connects the hardware and the software.In the theory teaching of addressing mode,the addressing mode scene demonstration through the EMU8086 software inclass can stimulate students’interest in learning,and make them gain perceptual knowledge of the registers,the storage,and the 8086 instruction system,realizing the combination of software and hardware.

EMU8086;addressing mode;theory teaching;scene demonstration

TP36

A

1673-1972(2015)03-0009-04

2014-01-20

石家庄学院校级教学改革研究资助项目(JGXM-201422A)

蔡文霞(1979-),女,河北藁城人,讲师,主要从事电子、嵌入式系统开发研究.

猜你喜欢
接口技术微机寄存器
STM32和51单片机寄存器映射原理异同分析
高等学校计算机专业课程教学改革实践——以汇编语言与接口技术课程为例
Lite寄存器模型的设计与实现
Fuzzy Search for Multiple Chinese Keywords in Cloud Environment
TDJ微机可控顶调速系统在平顶山东站的应用
电力系统全网一体化暂态仿真接口技术
中文GIS自然语言接口技术研究
电力系统微机保护装置的抗干扰措施
锁相环在微机保护中的应用
结构动力弹塑性与倒塌分析(Ⅱ)——SAP2ABAQUS接口技术、开发与验证