欢迎来到天天文库
浏览记录
ID:39548804
大小:50.50 KB
页数:5页
时间:2019-07-06
《Emu8086在微机原理与接口技术中的应用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Emu8086在微机原理与接口技术中的应用摘要:微机原理与接口技术是电子系专业必修的一门专业基础课,是我们学习后续课程、毕业设计和今后工作的重要技术基础,其重要性不言而喻。但由于该门课程对实践动手能力要求高,涉及的信息量大、知识点多、教学内容较抽象,,对我们来说学好理解透并不容易,对于微机原理学习中存在的这些问题,可以用EMU8086仿真软件来解决,Emu8086是学习微机原理(汇编语言)必不可少的工具,通过实验的上机使我们更加了解汇编,最终能够熟练掌握。接下来会介绍EMU8086的用法和一些指令常识,并
2、通过两个实例说明了该软件在汇编程序设计和接口技术方面的应用。关键词:微机原理;EMU8086;应用;寄存器正文:Emu8086是学习微机原理(汇编语言)必不可少的工具,它结合了一个先进的原始编辑器、组译器、反组译器、具除错功能的软件模拟工具(虚拟PC),还有一个循序渐进的指导工具。该软件包含了学习汇编语言的全部内容,可以辅助学习微型计算机的知识。而通过实验的上机会使我们能更加了解汇编,最终能够熟练掌握。一、emu8086简介emu8086是8086微处理器的仿真软件,完全兼容Intel和Amd系列,内部集
3、成了汇编程序编译器、连接器和丰富的参考资料、例程、学习指南等。该款软件可模拟真实微处理器运行程序的详细步骤,不仅能够显示寄存器、存储器、堆栈、标志寄存器以及变量的值,而且还可通过双击鼠标来改变存储器的值。而emu8086的工作界面为纯WINDOWS,界面友好,由菜单栏、快捷按钮栏和用户工作区构成,它能模拟真实微处理器工作的每一步骤,通过单步调试显示指令执行后CPU内部寄存器、存储器、堆栈、变量和标志寄存器的当前值,操作简单直观,通过学习它可以很快掌握汇编程序设计和接口技术等知识。这个模拟器是在一台"虚拟"
4、的电脑上运行程序的,它拥有自己独立的“硬件”,这样你程序就同诸如硬盘与内存这样的实际硬件完全隔离开,动态调试(DEBUG)时非常方便.8086的机器代码同INTEL下一代微处理器完全兼容,包括PentiumII和Pentium4,这意味着8086代码具有很广泛的应用范围,它在老式的和最新的计算机系统上都能工作8086指令的另外一个优点是它的指令集非常小,这样学起来会容易得多。Emu8086同主流汇编程序相比,语法简单得多,而且能生成在任何能兼容8086机器语言的代码。二、emu8086的使用1.在开始菜单
5、选在它的图标,或者直接运行Emu8086.EXE2.在"FILE"菜单中选择"SAMPLE"3.点击"CompileandEmulate"按纽(或者按快捷键F5)4.点击"SingleStep"按纽(或者按快捷键F8),可以查看代码如何运行.Emu8086,可在工作区输入并编辑源程序。单击工具栏上的“Emulate”按钮,便会自动完成对源程序的编译和连接;如无错误,将会进入指令调试界面。通过该软件提供的单步调试方式,可以方便观察当时寄存器值和状态。不仅如此,系统还可提供机器码、反汇编指令和指令地址,非常直
6、观、便捷。它还能模拟真实微处理器的每一步骤,并显示内部寄存器、存储器、堆栈、变量和标志寄存器,而且其中任何一个值都可通过鼠标双击来改变。同时它还可虚拟I/O接口,以及屏幕、电机、红绿灯、LED等外部设备。微型系统实验包括汇编语言实验、硬件接口实验、硬件中断实验、软盘实验以及操作系统实验等几个部分。三、与微机原理的衔接1、寄存器在8086CPU有8个通用寄存器,每一个寄存器都有自己的名称:AX累加寄存器,BX基址寄存器,CX计数寄存器,DX数据寄存器,SI源变址寄存器,DI目的变址寄存器,BP基址指针寄存器
7、,SP堆栈寄存器。在编程中,各通用寄存器的具体用途是由自己决定的,如CS代码段寄存器,用来存放当前正在运行的指令;DS数据寄存器,用来存放当前运行程序所用的数据;ES附加段寄存器,由程序员决定用途;SS堆栈寄存器,指出堆栈所在区域,还有指令指针寄存器等。而两个寄存器生成的地址被称为有效地址。默认下,BX,SI及DI与DS协同工作,BPSP与SS寄存器协同工作。其余的通用寄存器不能形成有效地址。同样,尽管BX可以形成有效地址,但是BHBL不能。IP始终同CS协同工作,指出当前执行的指令。寄存器的主要目的是保
8、存数值(变量)。4个通用寄存器(AX,BX,CX,DX)在使用时分为两个8位寄存器。当修改其中任意8位值,整个16位寄存器的值同样改变。同样对于其他的3个寄存器,“H”表示高8位,“L”表示低8位。寄存器在CPU内部,访问中它们速度远远超过内存。因为,访问内存需要经过系统总线,所以时间要长一些。而访问寄存器中的数据几乎不需要时间。于是,编程中,应当尽量在寄存器中保存数据。虽然寄存器很小,并且这些寄存器都有具体用途,但他们依然是
此文档下载收益归作者所有