(实验一DEBUG命令及其操作作业2.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(实验一DEBUG命令及其操作作业2

实验一 DEBUG命令及其操作 一、实验目的 学会用debug输入、更改、跟踪、运行汇编程序debug的常用命令,并能熟练应用; 了解数据在内存中的存储情况及堆栈中数据的压入与弹出。 掌握各种寻址方法以及简单指令的执行过程。 二、实验要求 实验前先预习附录1的内容,写出完成各实验内容的汇编程序清单。 本实验要求在PC机上进行。 本实验只要求在DEBUG调试状态下进行,包括汇编程序,调试程序,执行程序。 三、实验内容 1.实验内容学习用DEBUG调试工具进行源程序的输入、汇编、调试和执行。 1)打开计算机,将系统切换到MS-DOS方式下,运行DEBUG应用程序,将出现debug的命令提示符“-”。 2)在DEBUG命令提示符后键入“a100” -a100 其中a表示debug中的汇编命令(英文单词汇编Assemble的首字母),100表示汇编语言源程序从偏移地址为0100H的地方开始存放,debug默认输入的数字为十六进制数。 回车后,屏幕上会出现类似下面的内容: 13B1:0100(具体到某台计算机所产生的段地址和偏移地址可能有所不同) 其中13B1表示段地址为13B1H,偏移地址是我们刚给出的0100H,这表示在地址13B1:0100处,DEBUG等待用户键入程序助记符,下面键入程序: 13B1:0100 mov dl,1 13B1:0102 mov ah,2 13B1:0104 int 21 13B1:0106 int 20 13B1:0108 - 其中前三行指令表示调用DOS的2号功能调用(中的值),在屏幕上显示寄存器DL所对应的ASCII字符。 3)在DEBUG的命令提示符后键入g,这是执行程序的命令,然后回车,就可以看到结果了。 -g ? Program terminated normally 4)现在让我们用”d”命令来查看一下存储单元的情况 -d100,10f 上面的命令表示要查看当前段内、偏移地址为0100H~010FH内存单元的存储情况。回车后将得到以下结果。 13B1:0100 B2 01 B4 02 CD 21 CD 20-00 00 00 00 00 00 00 00 .....!. ........ 在100H~107H这8个单元内,程序覆盖了原来的内容,例如B2 01是指令mov dl,1的机器码,也可以知道这条指令是一条两字节的指令,需占两个字节的内存空间;CD 20则表示int 20这条指令的机器码。右边省略号及字符是组成程序的ASCII码等价字符,圆点表示不可显示字符。 5)下面我们用反汇编命令来查看一下所键入的程序。”U”命令的格式是“U起始地址,终止地址”,即把起始地址到终止地址之间的十六进制码反汇编成汇编语言助记符语句。键入 -u100,107 13B1:0100 B201 MOV DL,01 13B1:0102 B402 MOV AH,02 13B1:0104 CD21 INT 21 13B1:0106 CD20 INT 20 大家在屏幕上不仅可看到地址和助记符,而且还可以看到与汇编语言等价的机器语言。 6)现在我们修改存储单元的内容,看看显示情况有何变化。 -e101 13B1:0101 01.41 -g A Program terminated normally 其中13B1:0101 01.41表示将内容01修改为41,41H是字符A的ASCII码,因此屏幕上显示字符“A”。 7)下面我们给刚写的这个程序起个名字并存盘。在debug提示符后键入”n”后紧跟程序名及扩展名。 - -rbx BX 0000 : -rcx CX 0000 :8 -w Writing 0008 bytes 其中是我们给刚才那小段程序(共4行指令,8个字节)起的名字,扩展名为com的文件也为可执行文件。在保存文件时需指出文件的大小,文件的字节数必须事先放在BX和CX中,其中BX保存高16位,CX保存低16位,即用32位二进制数来保存文件的。若文件不超过64KB,则将BX设置为0,用CX保存文件的实际字节数。”r”命令为修改寄存器的命令。本例中,文件的实际字节数只有8个,故只修改了CX寄存器的内容。”w”为将文件写入磁盘的命令。 8)结束后可用Q命令退出DEBUG程序。 2.实验内容2 AX=3000H,BX=5000H,要求利用堆栈将AX和BX的内容进行交换。用DEBUG进行汇编与调试。 3.实验内容3 先用DEBUG的e命令给偏移地址为0300H ~ 0305H的内存单元存入11H,22H,33H,44H,55H。输入以下程序,分析每条指令中源操作数的寻址方式,单步执行程序,观

文档评论(0)

yyf7373 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档