- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Emu8086汇编语言程序设计探讨
基于Emu8086汇编语言程序设计探讨
摘要 简单介绍Emu8086功能,通过汇编程序实例调试,对比Emu8086和Debug在汇编语言程序设计中的应用。可以看出,Emu8086的使用使得汇编语言程序的编译、执行变得更加直观和清晰,有助于提高初学者的学习兴趣。
关键词 Emu8086;汇编语言;Debug
中图分类号:TP368.1 文献标识码:B 文章编号:1671-489X(2010)03-0064-02
Exploration of Assemble Language Program Design based on Emu8086//Xing Jiang
Abstract Firstly functions of Emu8086 are introduced. A program of assemble language is debugged. Emu8086 and debug are contrasted in it. The beginner can make use of Emu8086.Because compiling and running of assemble language program became clearly and easily by Emu8086.
Key words Emu8086; assemble language; Debug
Author’s address College of Computer Science Technology, Hubei Normal University, Huangshi, Hubei, China 435002
1 前言
有很多人认为汇编语言的应用范围很小,由此忽视它的重要性。其实汇编语言对每一个希望学习计算机科学与技术的人来说都是非常重要的,是不能不学习的语言。汇编语言是计算机能够提供给用户使用的最快而又最有效的语言,也是能够利用计算机所有硬件特性并能够直接控制硬件的唯一语言[1]。
Emu8086是8086微处理器的仿真软件,完全兼容Intel和Amd系列,内部集成了汇编程序编译器、连接器和丰富的参考资料、例程、学习指南等。该款软件可模拟真实微处理器运行程序的详细步骤,不仅能够显示寄存器、存储器、堆栈、标志寄存器以及变量的值,而且还可通过双击鼠标来改变存储器的值。除此之外,通过Emu8086可模拟显示器、直流步进电机、交通红绿灯和LED等外设[2]。
2 Emu8086和Debug的应用对比
对于Emu8086,可在工作区输入并编辑源程序。单击工具栏上的“emulate”按钮,Emu8086便会自动完成对源程序的编译和连接;如无错误,将会进入指令调试界面。通过该软件提供的单步调试方式,可以方便观察当时寄存器值和状态。不仅如此,系统还可提供机器码、反汇编指令和指令地址,非常直观、便捷。
动态调试程序Debug,实际上是DOS中的一个外部命令,功能强大。通过Debug提供的命令,可以监视和控制被调试程序的运行过程;可以装入、显示和修改文件;可对磁盘直接进行物理读写或逻辑读写。但是对于初学者来说,Debug难以掌握和理解,缺乏友好的互动界面。
下面通过实例来说明Emu8086在汇编语言程序设计中的运用,同时对比Debug的使用。
该程序可将BX寄存器内的二进制数用十六进制数的形式在屏幕上显示出来。
题意分析:可通过循环结构,将BX的内容从左到右,每4位为一组在屏幕上显示出来;至于字符的显示,可以通过DOS功能调用来实现。
1)Emu8086实现过程。
①编辑源代码。在Emu8086工作区中输入下列源代码,并保存,如图1所示。
… …
start: push ds
subax, ax
push ax
movbx,1010B
movch, 4
rotate:movcl, 4
rolbx, cl
moval, bl
andal, 0fh
addal, 30h ; ’0’~’9’ ASCII 30H~39H
cmpal, 3ah
jl printit
addal, 7h; ’A’~’F’ ASCII 41H~46H
printit:movdl, al
movah, 2
int21h
decch
jnzrotate
ret
… …
②编译源程序。单击Emu8086工具栏上的“compile”按钮,系统会提示编译好的文件存放位置和文件
文档评论(0)