精品文档,仅供学习与交流,如有侵权请联系网站删除实验一 显示程序实验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对默认文件夹进行修改用户保存的文件类型与第一阶段所选择的模板有关完成编译和保存文件后,用户可按下图4中的“close”按钮先关闭该窗体,再利用工具栏上的“emulate”按钮打开真器界面和原程序界面进行真调试,也可以按下图4中的Run按钮运行直接程序表1编译器菜单功能一级菜单名称二级菜单名称三级菜单名称功能file 文件 new 新建 com templatecom模板 exe templateexe模板 bin templatebin模板 boot templateboot模板example 实例open 打开文件save 保存文件save as 另存为prints 打印文件export to HTML 转换为超文本文件exit 退出edit 编辑undo 取消redo 重复cut 剪切cope 复制paste 粘贴select all 选择全部find 查找find next 查找下一个replace 代替indent 缩进outdent 凸出comment block 将被选块变为注释uncomment block 将被注释变为指令advanced editor macros 高级宏汇编advanced 高级设置 Show line numbers 显示行编号 tabitfy selection 空格转换为定位字元 untabitfy selection 定位字元转换为空格 lowercase selection 用小写字母表示 uppercase selection 用大写字母表示 display white space 显示出空格出空间bookmark 书签 toggle bookmark 在光标处放置标签 previous bookmark 跳到上一个标签处 next bookmark 跳到下一个标签处 jump to first 跳到第一个标签处 jump to last 跳到最后一个标签处 clear all bookmark 清除所有标签assembler 汇编 compile 编译 compile and load in the emulation 编译并加载到真器中 fasm Fasm汇编 set output directory 设置输出文件夹emulator 真器 show emulator 显示真窗口 assemble and load in the emulator 编译并加载到真器中math 数学计算 multi base calculator 多进制基本计算器 base converter 基本转换器ascii code ASCII 码表help 帮助 documentation and tutorials 文档及指南 check for an update 软件更新检查 about 关于软件四.仿真调试当用户完成程序编译后,利用工具栏中的“emulate”按钮可将编译好的文件加载到仿真器进行真调试。
除使用“emulate”按钮外,用户也可以用菜单栏中的assembler/compile and load in the emulation或emulator/assemble and load in the emulator打开仿真器仿真器界面如图5所示当用户将程序加载到仿真器后,会同时打开仿真器界面和源程序界面,用户在仿真器界面中也可以同时看到源代码和编译后的机器码点击的任意一条源程序指令,则对应的机器代码显示为被选显示状态,与此同时,上面的代码指针也会相应变化用户也可以通过这种操作了解,数据段和堆栈段中各变量或数据在存储器中的情况用户可以利用工具栏中的“single step”按钮进行单步跟踪调试,以便仔细观察各寄存器、存储器、变量、标记位等情况,这对于程序初始调试时十分有用;当程序调试完毕,或需要连续运行观察时,则可以使用“run”按钮;当希望返回上一步操作时,则可以使用“step back”按钮;若单击“reload”按钮,则真器会重新加载程序,并将指令指针指向程序的第一条指令;您也可以利用“load”按钮,从您保存的文件夹中加载其它程序用户除使用上述工具栏中的按钮进行仿真调试外,还可以利用其菜单中的其它功能进行更高级的调试和设置。
菜单的详细功能见表2所示表2真器菜单功能一级菜单名称二级菜单名称功能file 文件 load executable…加载要执行的程序 reload重新加载程序 examples打开实例 reset emulator and ram复位真器和RAM set command line parameter设置命令行参数 set the emulator’s state保存真器设置 load form previous state载入原先保存的设置math 数学计算 multi base calculator多进制基本计算器 base converter基本转换器debugsingle step 单步跟踪 single over单步 step back单步返回 stop on condition设置停止运行的条件 run until 运行到光标处 run连续运行 set break point 在光标处设置断点 clear break point清除所有断点 show current break point 显示当前断点指令 show current instruction (at CS :IP)显示当前指令 set CS:IP to selected position将被选指令设定为当前指令view 观察 log and debug.exe emulation打开debug.调试窗口 extend value viewer打开扩展数值观察器 stack打开堆栈窗口 variables打开变量窗口 symbol table打开标记表 listing显示源程序及目标文件内容 original source code 打开源程序代码窗口 option 软件高级设置,可对字体、颜色、文本格式、键盘输入等进行设置 arithmetic & logical unit选择打开存储器、寄存器等单元,与AUX按钮功能相同 flag打开标记位窗口 lexical flag analyser打开文本说明格式的标记位窗口 ascii code打开ASCII码表 emulator screen打开模拟屏幕窗口external 外部真器 start debug.exe启动windows的debug真调试器 command prompt打开DOS命令窗口 run在DOS环境下运行程序virtual devices 虚拟设备 LED-Disply.exeLED显示器 printer.exe打印机 robit.exe机器人 simple.exe读写端口 simplest.exe在屏幕上读写端口 stepper_motor.exe步进马达 thermometer.exe温度控制 tranffic_lights交通灯控制 VGA_STATE.exe显示屏控制Virtual drive 虚拟驱动盘 boot form virtual floppy (floppy_0) 从虚拟的软盘中导入程序 write 512 byte at 0000:7C00 to boot sector (floppy_0) (将存储器中07C00单元开始的512个字节写到软盘中 write “.bin” file to floppy 将bin文件写到软盘中 create new floppy drive 创建一个新的软盘2.实验目的 。