实验01 Emu8086软件的使用 实验报告
汇编语言程序设计实验篇emu8086
1.汇编语言程序设计实验篇1.1.汇编系统软件简介Emu8086-Microprocessor Emulator是集源代码编辑器、汇编/反汇编工具以及debug 的模拟器。
它能模拟一台"虚拟"的电脑运行程序,拥有独立的“硬件”,避免访问真实硬件。
该软件兼容Intel的下一代处理器,包括PentiumII、Pentium4。
利用该软件提供的调试工具,能够单步跟踪程序,观察程序执行过程中寄存器、标志位、堆栈和内存单元的内容。
1.1.1创建程序 TEMPLATE程序本章与指令相关的实验都是用COM TEMPLATE类型的程序完成的。
打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。
在“choose code template”对话框中,选择“COM template-simple and tiny executable , pure machine code.”后,单击按钮。
在如所示的编辑界面中,在“;add your code here”部分输入相应的指令,第一条指令默认的偏移地址为100h。
输入全部指令后,单击按钮,保存相应的程序段。
2.EXE TEMPLATE程序本章与DOS功能调用和汇编源程序相关的实验都是用EXE TEMPLATE程序完成的。
打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。
在“choose code template”对话框中,选择“EXE template-advanced executable : relocation, checksum.”后,单击按钮。
在如图所示的编辑界面中,已经可以给出了源程序的框架,包含数据段、堆栈段和代码段的定义以及必要的功能调用等,在“add your data here”和“;add your code here”部分可以分别输入相应的变量定义和指令。
输入全部指令后,单击按钮,保存相应的程序。
微机原理Emu8086仿真软件实验讲义
实验一显示程序实验1.emu8086介绍Emu8086-Assembler and Microprocessor Emulator是一个可在 Windows 环境下运行的 8086CPU 汇编仿真软件,Emu8086集源代码编辑器,汇编/反汇编工具以及可以运行 debug 的模拟器(虚拟机器)于一身,它优于一般编译器的地方在于提供了一个虚拟的80x86 环境,拥有自己一套独立的“硬件”,可以完成一些纯软件编译器无法完成的功能例如 Led 显示,交通灯,步进电机等等,而且动态调试(DEBUG)时非常方便一.软件启动启动界面如图 1 所示,用户可以选择新建文本、程序实例、启动指南、近期文档。
注册的用户名随意,密码112,即可成功。
二.新建文件单击图 1 中的“ New”选项,软件会弹出如图 2 所示的选择界面。
●COM 模板——适用于简单且不需分段的程序,所有内容均放在代码段中,程序代码默认从 ORG 0100H 开始;●EXE 模板——适用于需分段的复杂程序,内容按代码段、数据段、堆栈段划分。
需要注意的是采用该模板时,用户不可将代码段人为地设置为 ORG0100H,而应由编译器自动完成空间分配;●BIN 模板——二进制文件,适用于所有用户定义结构类型;●BOOT 模板——适用于在软盘中创建文件。
此外,若用户希望打开一个完全空的文档,则可选择empty workspace的选项。
三.编译和加载程序用户可根据上述选择的模板中编写程序,如图3 所示。
该编辑界面集文档编辑、指令编译、程序加载、系统工具、在线帮助为一体,其菜单功能如表 1 所示。
编写完程序后,用户只需单击工具栏上的“ compile”按钮,即可完成程序的编译工作,并弹出如图 4 所示的编译状态界面。
若有错误则会在窗口中提示,若无错误则还会弹出保存界面,让用户将编译好的文件保存相应的文件夹中。
默认文件夹为,但您可以通过菜单中 assembler/ set output directory 对默认文件夹进行修改。
实验01_Emu8086软件的使用
实验一Emu8086软件的使用一、实验目的:(1)熟悉汇编语言开发环境。
(2)掌握Emu8086软件使用方法。
(3)了解汇编语言的程序结构、调试一个简单的程序。
(4)理解寻址方式的意义。
二、实验内容及要求:1、Emu8086的使用(1)打开桌面上的Emu8086的图标,出现如图所示的对话框,选择【继续……】首次打开软件,界面中默认已有一段小程序。
该程序实现在屏幕上显示三段字符串的功能。
若用户需要自己重新编程,可点击工具栏的【新建】图标,出现如图所示的对话框,选择编程所采用的模板。
选择不同的模板,在程序源代码中会出现如下标记:#MAKE_COM#选择COM模板#MAKE_BIN#选择BIN模板#MAKE_EXE#选择EXE模板#MAKE_BOOT#选择BOOT模板#MAKE_COM#最古老的一个最简单的可执行文件格式。
采用此格式,源代码应该在100H后加载(即:源代码之前应有ORG100H)。
从文件的第一个字节开始执行。
支持DOS和Windows命令提示符。
#MAKE_EXE#一种更先进的可执行文件格式。
源程序代码的规模不限,源代码的分段也不限,但程序中必须包含堆栈段的定义。
您可以选择从新建菜单中的EXE模板创建一个简单的EXE程序,有明确的数据段,堆栈段和代码段的定义。
程序员在源代码中定义程序的入口点(即开始执行的位置),该格式支持DOS和Windows命令提示符。
这两种模板是最常用的模板(2)选择COM模板,点击【确定】,软件出现源代码编辑器的界面,如图所示:在源代码编辑器的空白区域,编写如下一段小程序:MOV AX,5MOV BX,10ADD AX,BXSUB AX,1HLT代码编写结束,点击菜单【文件】【另存为……】,将源代码换名保存。
本例将源代码保存为001.asm。
点击工具栏的【模拟】按钮,如果程序有错误不能编译,出现如图所示的界面:点击错误提示,即可选择源代码中相应的错误的行,在此处更改源代码。
微型计算机原理及接口技术实验报告
CL
ADD
AL, CH
;高4位加低4位
POP
CX
RET
BCD2BIN
ENDP
CODE
ENDS
END
START
编辑后:
编译后:
点击运行后:
运行后:
4.实验总结:
本次实验中:三个结构中数据段datasegment定义数据,堆栈段stacksegment要求存取空间,代码段codesegment编写主程序代码,用寄存器CX将,入口参数AL中存放两位BCD码,出口参数AL 中存放转换后的二进制数。首先调取存取空间,并且调用子程序,CALL指令,HLT是8086处理器处于停止状态,不执行指令,定义过程的伪指令PROC,子程序中push将把CX的值压入堆栈段,SHR逻辑右移指令,MUL的乘法指令,子程序BCD2BIN中的RET是返回指令。本实验通过对子程序的调用,以及返回等操作来实现将BCD码转换成二进制数。
ENDS
END
START
将问号改成0后编译源程序得到错误如下:
清除错误后得到
点击run
运行后得到
2. 代码转换实验
从键盘输入2个十进制数组合成压缩BCD码存入DL,再将压缩BCD码转换成ASCII码送CRT显示。
源程序:
CODE
SEGMENT
ASSUME
CS:CODE
ST:
MOV
AH, 01H
INT
4、实验总结
通过本实验:可以知道在不同的环境下运行emu8086是要注意某些问题,比如xp环境下的问号在win7下要改成0,编辑程序的框架分为三个部分数据段datasegment堆栈段stacksegment代码段codesegment。编辑好以后要点击编译必须无误后才能运行。点击运行后可以在下一个界面单步观察,AX BX CX DX CS IP SS SP BP SI DI DS ES的值的情况以便更好的了解emu8086。
微机原理Emu8086仿真软件实验讲义剖析
实验一显示程序实验1.emu8086介绍Emu8086-Assembler and Microprocessor Emulator是一个可在Windows 环境下运行的8086CPU汇编仿真软件,Emu8086集源代码编辑器,汇编/反汇编工具以及可以运行debug的模拟器(虚拟机器)于一身,它优于一般编译器的地方在于提供了一个虚拟的80x86环境,拥有自己一套独立的“硬件”,可以完成一些纯软件编译器无法完成的功能例如Led显示,交通灯,步进电机等等,而且动态调试(DEBUG)时非常方便一.软件启动启动界面如图1所示,用户可以选择新建文本、程序实例、启动指南、近期文档。
注册的用户名随意,密码112,即可成功。
二.新建文件单击图1中的“New”选项,软件会弹出如图2所示的选择界面。
●COM模板——适用于简单且不需分段的程序,所有内容均放在代码段中,程序代码默认从ORG 0100H开始;●EXE模板——适用于需分段的复杂程序,内容按代码段、数据段、堆栈段划分。
需要注意的是采用该模板时,用户不可将代码段人为地设置为ORG 0100H,而应由编译器自动完成空间分配;●BIN模板——二进制文件,适用于所有用户定义结构类型;●BOOT模板——适用于在软盘中创建文件。
此外,若用户希望打开一个完全空的文档,则可选择empty workspace的选项。
三.编译和加载程序用户可根据上述选择的模板中编写程序,如图3所示。
该编辑界面集文档编辑、指令编译、程序加载、系统工具、在线帮助为一体,其菜单功能如表1所示。
编写完程序后,用户只需单击工具栏上的“compile”按钮,即可完成程序的编译工作,并弹出如图4所示的编译状态界面。
若有错误则会在窗口中提示,若无错误则还会弹出保存界面,让用户将编译好的文件保存相应的文件夹中。
默认文件夹为…\emu8086\MyBuild\,但您可以通过菜单中assembler/ set output directory对默认文件夹进行修改。
Emu8086软件的使用
Emu8086软件的使用一、实验目的:(1)熟悉汇编语言开发环境。
(2)掌握Emu8086软件使用方法。
(3)了解汇编语言的程序结构、调试一个简单的程序。
(4)理解寻址方式的意义。
二、实验内容及要求:1、Emu8086的使用(1)打开桌面上的Emu8086的图标,出现如图所示的对话框,选择【继续……】首次打开软件,界面中默认已有一段小程序。
该程序实现在屏幕上显示三段字符串的功能。
若用户需要自己重新编程,可点击工具栏的【新建】图标,出现如图所示的对话框,选择编程所采用的模板。
选择不同的模板,在程序源代码中会出现如下标记:#MAKE_COM# 选择COM模板#MAKE_BIN# 选择BIN模板#MAKE_EXE# 选择EXE模板#MAKE_BOOT# 选择BOOT模板#MAKE_COM#最古老的一个最简单的可执行文件格式。
采用此格式,源代码应该在100H后加载(即:源代码之前应有ORG 100H)。
从文件的第一个字节开始执行。
支持DOS和Windows命令提示符。
#MAKE_EXE#一种更先进的可执行文件格式。
源程序代码的规模不限,源代码的分段也不限,但程序中必须包含堆栈段的定义。
您可以选择从新建菜单中的EXE模板创建一个简单的EXE程序,有明确的数据段,堆栈段和代码段的定义。
程序员在源代码中定义程序的入口点(即开始执行的位置),该格式支持DOS和Windows命令提示符。
这两种模板是最常用的模板(2)选择COM模板,点击【确定】,软件出现源代码编辑器的界面,如图所示:在源代码编辑器的空白区域,编写如下一段小程序:MOV AX, 5MOV BX, 10ADD AX, BXSUB AX, 1HLT代码编写结束,点击菜单【文件】【另存为……】,将源代码换名保存。
本例将源代码保存为001.asm。
点击工具栏的【模拟】按钮,如果程序有错误不能编译,出现如图所示的界面:点击错误提示,即可选择源代码中相应的错误的行,在此处更改源代码。
实验一 emu8086的使用
实验一emu8086软件的使用一. 实验目的1.熟悉汇编语言开发环境。
2.掌握Emu8086软件使用方法。
3.了解汇编语言的程序结构、调试一个简单的程序。
4.理解寻址方式的意义。
二. 实验环境硬件环境:奔3以上处理器,512MB以上内存空间软件环境:windowsXP以上操作系统,emu8086编译环境。
三.实验内容与完成情况1.实验程序例3.1程序:data segmentdata1 db 0f8h,60h,0ach,74h,3bhdata2 db 0c1h,36h,9eh,0d5h,20hpkey db "press any key...$"data endscode segmentassume cs:code,ds:datastart:mov ax, datamov ds, axmov es, axmov cx,5clclooper:mov al,data2[si]adc data1[si],alinc sidec cxjnz loopermov ax, 4c00hint 21hcode endsend start2.实验步骤首先打开Emu8086的软件,选择COM模板,将程序录入8086程序运行软件,点击保存扩展名为.asm,再单击模拟,再选择程序的单步执行模式,得到以下的操作图。
(1)开始执行(2)单步执行(3)结束四.出现的问题1.建立编码模板时出错;2.不知道如何执行程序。
五.对问题的解决方法1.在老师的提示下,知道.exe文件是需要用到的模板;2.与C++6.0的界面对比后,知道点击emulate可以打开运行界面,点击single step进行单步执行,点击run可以完全执行程序。
实验一-8086汇编语言上机调试及基本操作.
实验一:8086汇编语言上机调试及基本操作(验证性)1、实验目的:(1)掌握常用DEBUG命令: G,D,R,T,U,Q。
(2)掌握工具软件EMU8086。
(3)掌握完整程序设计方法的格式,能正确书写数据段,代码段等。
(4)掌握简单的数值转换算法2、实验说明:计算机中的数值有各种表达方式,这是计算机的基础。
掌握各种数制之间的转换是一种基本功。
3、程序框图:对于0-999(即000H-3E7H)范围内的二进制数4、参考程序:; 将AX中的三位数拆为三个BCD码, 并存入Result 开始的三个单元DATA SEGMENT; 数据段RESULT_1 DB 1RESULT_2 DB 1RESULT_3 DB 1DATA ENDSSTACK SEGMENT STACK ; 堆栈段STA DB 64 DUP(0)STACK_TOP DB 0STACK ENDSCODE SEGMENT; 代码段ASSUME CS:CODE , DS:DATA , ES:DATA , SS:STACKSTART:MOV AX, DATAMOV DS, AX ; 设置数据段MOV AX, STACKMOV SS, AX ; 设置堆栈段LEA SP, STACK_TOP ; 设置栈顶指针MOV AX, 2afHMOV CL, 100DIV CLMOV RESULT_1, AL ; 除以100, 得百位数MOV AL, AHMOV AH, 0MOV CL, 10DIV CLMOV RESULT_2, AL ; 余数除以10, 得十位数MOV RESULT_3, AH ; 余数为个位数MOV AX,4C00H ; 返回DOSINT 21H ;CODE ENDSEND START ; 最后一行要按回车键5、实验及报告要求:1)用合适的编辑软件编辑以上源文件并存入合适目录;要求补充注释未注释的伪指令和指令;2)分别在DOS和Windows下编译、连接生成可执行文件,比较两个环境下生成的机器码的长度和内容;试指出第2、5、7、10、14条指令的IP和机器码。
汇编语言、微机原理、接口技术-实验一:输入输出实验
1)实现两位十进制和的输出
2)实现一位十进制四则运算
3)实现多位数运算
二.思考内容
1.输入输出数据和计算用数据的区别
2.单字符输入输出和串输入输出的不同
二.理论分析或算法分析
文字描述以及算法流程图(文字主要描述基本要求和扩展要求的算法流程区Байду номын сангаас)
基础要求:
1)实现两位十进制和的输出
利用了除法DIV,将商放在AL,余数放AH。除以10后可将AL和AH中小于10的数单独输出
三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等)
运行结果如图一
运行结果如图二
mov ah, 1
int 21h
mov bl, al
mov ah, 2
mov dl, '+'
int 21h
mov ah, 1
int 21h
add bl, al
mov ah, 2
mov dl, '='
int 21h
sub dl, 30h
mov ah, 2
int 21h
Hlt
四.实验结果分析(含执行结果验证、输出显示信息、图形、调试过程中所遇的问题及处理方法等)
图一:2+3=5
图二:扩展一
思考问题的个人想法,以及算法设想.
1)从键盘中输入和从屏幕上输出的都是字符,和计算用的数据时间相差‘0’即30H。所以一个数从屏幕上输出时将+30H。输入时转换成数字-30H
五.结论:完成了本次实验要求的实验内容。学会了:熟悉emu8086仿真系统,实现控制台输入输出,设计并单步调试实现一位十进制数的加法运算,实现两位十进制和的输出,实现一位十进制四则运算,实现多位数运算。
emu8086仿真软件的应用
emu8086仿真软件的应用第一篇:emu8086仿真软件的应用EMU8086 仿真软件在《微机原理》课程教学中的应用姓名:专业:学号:摘要:微机原理与接口技术课程的主要内容是微机系统的工作原理。
《微机原理与接口技术》作为计算机专业及其相关专业的一门基础课,其重要性是不言而喻的,若在该门课程的教学中能灵活运用Emu8086仿真软件进行演示及实验教学,则能让学生直观地理解的工作原理和工作过程,提高学生的学习兴趣,较好地解决了微机原理课程教学中存在的难题。
在实际的教学中,实验设备昂贵,造成实验环节比重过少,不能充分发挥学习者的创造性和能动性。
而实践证明,做中学是一种非常高效的现代教育理论,做中学理论即“从活动中学”和“从经验中学”。
本文介绍一些基于仿真软件Emu8086 的虚拟微机系统实验,使学习者容易达到做中学的目的。
简单介绍Emu8086功能,Emu8086的使用使得汇编语言程序的编译、执行变得更加直观和清晰,有助于提高初学者的学习兴趣。
针对微机原理学习中存在的问题,提出了用EMU8086仿真软件来解决的办法,并介绍了EMU8086的用法和一些指令常识,并通过两个实例说明了该软件在汇编程序设计和接口技术方面的应用。
关键词:微机原理;EMU8086;应用正文:一、软件介绍Emu8086是Windows平台的一款80x86CPU模拟。
Emu8086为8086 microprocessor emulator(8086微处理器模拟器),它是Windows平台的一款80x86CPU模拟器,可以用于8086CPU的模拟运行。
Emu8086便是输入80X86汇编语言的并模拟其真实CPU工作的软件,不过这里的模拟并不是100%的和真实一模一样,比如遇到中止的机器码,模拟器不会中止退出,只会提醒输入代码程序halt。
同样,由于是模拟的,那么模拟器中的内存大小、CPU频率等实际问题也是理想化的(可以自己设定,毕竟环境是模拟的嘛),而不是实际的。
EMU8086软件在微机原理及接口技术数字中的应用的研究报告
EMU8086软件在微机原理及接口技术数字中的应用的研究报告随着计算机技术的不断发展,微机的应用越来越广泛,尤其是在数字中的应用,可谓是无处不在。
而EMU8086软件作为一种可以在计算机上模拟8086微处理器的软件,在微机原理及接口技术数字中的应用也越来越多。
在数字电路的设计中,EMU8086软件可以通过模拟8086微处理器来实现对数字器件的控制。
可以从这个层面上看出,EMU8086软件在数字电路的研究中起到了非常重要的作用。
使用EMU8086软件进行数字电路的仿真可以大大提高数字电路设计的效率和质量,有效地减少了设计成本。
此外,EMU8086软件还可以进行微机的汇编语言编程教学。
学生可以通过EMU8086软件进行汇编语言的学习和实验,比如可以通过EMU8086软件来设计一个简单的程序,在实践中学习8086微处理器的工作原理和运行方式。
同时,EMU8086软件还提供了一些实用的工具,比如调试器、汇编器等,方便用户进行程序测试和调试。
另外,EMU8086软件还可以应用于数字信号处理中。
在现代通信技术中,数字信号处理起着至关重要的作用,而EMU8086软件就可以通过模拟8086微处理器来实现对数字信号的处理。
比如可以通过EMU8086软件设计一个数字滤波器,对数字信号进行滤波处理,实现信号的降噪和去除干扰等功能。
总之,EMU8086软件在微机原理及接口技术数字中的应用是非常广泛的。
无论是在数字电路的设计中,还是在汇编语言编程教学中,EMU8086软件都起着重要的作用。
同时,EMU8086软件还可以应用于数字信号处理等领域,为数字技术的发展做出了重要贡献。
数据分析是对一定数量数据的收集,重组和解释的一个过程。
在这个过程中,我们需要对数据进行清洗,排序,统计,分布图表展示等操作,从而发现数据中的规律性和趋势性,为后续的决策提供参考依据。
以下是一个关于企业销售情况的数据分析范例:数据收集:该企业2019年1-12月销售数据。
《微机原理及应用》实验指导书123
《微机原理及应用》实验指导书实验一汇编&仿真软件EMU8086的认识实验实验目的:熟悉EMU8086的开发环境,为后续的汇编语言程序设计与调试运行做好准备。
实验内容:1、熟悉EMU8086开发环境的菜单命令以及工具栏按钮的功能。
2、熟悉汇编程序的编辑、编译、仿真运行及调试的基本过程。
实验步骤:1、进入EMU8086的开发环境,新建一个文件,使用“COMTemplate”选项。
2、在编辑窗口中的ORG 100h后键入如下程序:3、使用Emulate仿真功能编译程序并进入Emulator仿真界面。
如果编译过程中报错,请根据提示信息除错,然后重新编译直到通过。
4、在仿真界面中使用Single Step单步执行程序,观察程序的运行状况及各寄存器的变化(蓝色高亮显示)。
利用ALU和FLAGS 按钮可以查看运算过程及各标志位的变化情况。
5、程序运行结束后记录AX、BL和CX的值。
(重新加载程序请使用RELOAD按钮)6、更改源程序里AX的初始值为7FF8H,重复步骤3~5。
比较两次结果的不同之处,解释原因。
(数值转换查看功能在MATH 菜单中)7、对已讲授的各类汇编指令用上面的步骤调试运行,加深对指令功能及要点的掌握。
思考题:无符号数和有符号数在汇编程序里如何区分?实验二汇编语言程序设计1:统计程序实验目的:进一步掌握8086的指令系统以及汇编程序的基本设计方法。
实验内容:附录中有一英文段落。
编写汇编程序,统计26个英文字母在其中出现的频率(不区分大小写),结果存放到result开始的26字节存储单元里。
实验步骤:1.进入EMU8086的开发环境,新建一个文件,使用“COM Template”选项。
2.在编辑窗口中的ORG 100h后键入事先编好的程序。
3.使用Emulate仿真功能编译、调试及运行。
4.记录程序和正确的统计结果。
附录:1.待统计文本:Because registers are located inside the CPU, they are much faster than memory. Accessing a memory location requires the use of a system bus, so it takes much longer. Accessing data in a register usually takes no time. Therefore, you should try to keep variables in the registers. Register sets are very small and most registers have special purposes which limit their use as variables, but they are still an excellent place to store temporary data of calculations.2.字符与ASCII码的对照关系:A~Z:41H~5AHa~z:61H~7AH3.屏幕输出待显示字符:例子:mov dl, 'a'mov ah,2int 21h4.程序模板:ORG 100hjmp start;;;数据定义sample DB "AAaa00...zzZ" result DB 26 dup (0)in_order DW 26 dup (0) ;;;数据定义结束start:;;;;;;添加sample字符串的统计程序;;;实验三汇编语言程序设计2:子程序设计-冒泡排序实验目的:掌握子程序和多重循环的基本设计方法。
EMU8086模拟器环境中内存及操作
实验二EMU8086模拟器环境中内存的操作姓名:付玉伟学号: 10538057 成绩:实验要求:熟悉EMU8086模拟器的操作实验目标:1. 了解和掌握在EMU8086实验环境中对内存的赋值;2. 掌握各种寻址方式:立即数寻址,寄存器寻址和存储器寻址。
实验源程序:MOV AH, 55HMOV AL,66HMOV BX,2000HMOV SI, 0002HMOV BP,2000HMOV DI, 0001HMOV AX, BXMOV AX, [BX]MOV AX, [BX+SI]MOV AX, [BX+DI]MOV AX, [BP]MOV AX, [BP+0002H]HLTMOV AX, 1020HMOV BX,2030HMOV AX, BXADD AX,BXMOV [BX],AXMOV [2032H],AXHLT实验结果:12.模拟后实际源程序窗口2程序调试窗口各个寄存器的值:AX:0000, BX:0000, CX:0058, DX:0000 CS:0B56, ES:0B56, SS:0B56, DS:0B56 SP:FFFE, BP:0000SI:0000, DI:0000CF=0,ZF=0,SF=0,OF=0,PF=0,AF=0,IF=1,DF=0.8.修改字节赋值立即数寻址把00102H送入DX DH=01,DL=02立即数寻址 AH=09,AL=24立即数寻址基址寻址把数据段中以BX为有效地址的存储器单元的字节送AX每次单步执行后,相关寄存器值的变化二、1、2、物理地址=段地址*16+偏移地址,内存里面被输入了相应的值重要命令集锦:mov,hlt学习心得:通过这次实验,我对EMU8086实验模拟环境有相应的了解,熟悉了基本的EMU8086的使用方法,同时也对mov这个指令有了深入的理解,并且知道了各个存储器里面的值得存储过程,为以后的的学习打下了坚实的基础。
欢迎您的下载,资料仅供参考!。
ch01-Emu8086汇编软件使用
第1章 Emu8086汇编软件使用一. 实验目的1. 熟悉汇编语言开发环境2. 掌握Emu8086软件使用方法和调试方法3. 熟悉汇编语言的编辑、汇编、连接、运行的全过程4. 调试简单的程序二. 实验条件安装有Emu8086仿真软件的电脑一台。
三. 预习要求预习Emu8086的使用方法和汇编语言指令。
Emu8086是一个可在Windows 环境下运行的8086CPU汇编仿真软件。
它集成了文本编辑器、编译器、反编译器、仿真调试、虚拟设备和驱动器为一体,并具有在线使用指南,对于学习汇编语言的人是一个很有用的工具。
软件提供的实例中包含了几十种典型的程序代码,其中包括:数值计算、逻辑运算、屏幕显示、键盘输入、文件打印、马达控制、温度控制、交通灯控制等。
在软件提供的快速指南中提供了多种在线帮助工具,包括:文件索引、8086CUP指令使用指南、系统中断调用列表以及用法等。
用户可以通过该工具快速地掌握8086CPU指令体系和emu8086汇编真软件的使用。
1. 软件启动打开桌面上的EMU8086的图标,出现如图1.1所示的启动界面,可选择new,建立新的汇编语言程序,也可打开code examples读取示例程序。
微微机原理与接口技术实用教程2图 1.1 启动界面2. 新建文件单击图1.1中的“new”选项,建立新的汇编程序,软件弹出如图1.2所示对话框,选择代码的文本格式,共有4种模板。
图1.2 新建文本格式选择z COM 模板:适用于简单且不需分段的程序,所有内容均放在代码段中,程序代码默认从ORG 0100H 开始;z EXE 模板:适用于需分段的复杂程序,内容按代码段、数据段、堆栈段划分。
需要注意的是采用该模板时,用户不可将代码段人为地设置为ORG 0100H ,而应由编译器自动完成空间分配;z BIN 模板:二进制文件,适用于所有用户定义结构类型,一般不用,因为不能正确解释伪指令;z BOOT 模板:适用于在软盘中创建文件,数据段的段地址为07C0H 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验日期:10月9号
学校:安徽农业大学经济技术学院星期:三节次:1、2实验课时:
姓名:江珊珊学号:专业、班级:通信三班得分:
1、实验目的
(1)熟悉汇编语言开发环境。
(2)掌握Emu8086软件使用方法。
(3)了解汇编语言的程序结构、调试一个简单的程序。
(4)理解寻址方式的意义。
2、实验内容
(1)习题3.36的程序如下所示:
MOV AX ,0ABCH
DEC AX
AND AX,00FFH
MOV CL,4
SAL AL,1
MOV CL,ALHLT
(2)习题3.48的程序如下所示:设BX=6D16H,AX=1100H
MOV CL,06H
ROL AX,CL
SHR BX,CL
HLT
(3)习题3.49的程序如下所示:设AX=0119H
MOV CH, AH
ADD AL, AH
DAA
XCHG AL,CH
ADC AL, CH
DAA
MOV AH, AL
MOV AL, CH
HLT
3、实验步骤
首先打开Emu8086的软件,选择COM模板,将程序录入8086程序运行软件,点击保存扩展名为.asm,再单击模拟,再选择程序的单步执行模式,得到一下的操作图。
(1)习题3.36单步执行程序如下
(2)习题3.48单步执行程序如下
(3)习题3.49单步执行步骤如下