汇编语言程序设计 上机指导.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  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的使用 Debug是为汇编语言设计的一种8086实模式的调试工具,它通过单步执行、设置断点等方式为汇编语言程序员提供了非常有效的程序调试手段。 Debug可以直接用来检查和修改内存单元内容、装入、运行程序、检查及修改寄存器的值,也就是说Debug可深入到计算机的内部,可使用户更紧密地与计算机中真正进行的工作相联系。通过Debug能更好的理解代码。 (一)启动Debug 方法1:在运行对话框中输入“cmd”启动DOS命令窗口后输入“Debug”回车; ?方法2:在程序/附件/命令提示符,启动DOS命令窗口后输入“Debug”回车。 Debug的提示符是符号“-”。即出现提示符“-”就表示可以接受DEBUG命令了。按Alt+Enter键可在全屏与窗口之间切换。 (二)Debug命令格式 DEBUG的每个命令都是一个字母,后跟一个或多个参数,参数与参数之间,用空格或逗号隔开,参数与命令符之间可用空格隔开,命令的结束符是回车键 Enter。 下面对DEBUG命令作几点说明: 字母不分大小写。 只使用16进制数,且不能带后缀H。 以空格或逗号作为命令各项之间的分隔符。分隔符只在两个数值之间是必须的。 可以用Ctrl+C终止命令的执行。 若输入的命令有语法错误,则提示“Error”,并用“^”指出错误位置。 (三)Debug常用命令 ? 显示 Debug 命令列表。 R 显示或改变一个或多个寄存器的内容 D 显示查看内存中的内容。 E 从指定地址开始,将数据输入到内存,即改写内存的内容。 A 以汇编指令的格式在内存中写入一条机器指令。 U 反汇编字节并显示相应的汇编指令 T 执行一条指令,然后显示所有寄存器的内容 P 执行循环、重复的字符串指令、软件中断或子例程。不跟踪内部。 G 运行在内存中的可执行文件。 Q 推出。 1、R命令 格式: R [寄存器名] ?(1) R 功能:显示当前所有寄存器内容,状态标志及将要执行的下一指令的地址、代码及汇编语句形式(反汇编CS:IP所指的指令),其中对状态标志FLAG以每位的形式显示。 ?(2) R 寄存器名 功能:显示指定寄存器内容,例如:-R AX Enter 等待用户键入新的值,按回车键结束。 当进入DEBUG时,寄存器和标志设成以下数值 : DS,ES指向最低可用段处的程序区前缀。BX和CX为被装入文件的长度值。其余寄存器皆取零值 。 如果键入F字符代替寄存器名,Debug将每个标记的当前设置显示为两字母代码,然后显示 Debug 提示符。要更改标志的设置,请从下表中键入适当的两字母代码: 溢出 方向 中断 正负 零 辅助进位 奇偶校验 进位 设置 ov dn(减) ei ng(负 zr ac Pe(偶校验 Cy 清除 nv up(增) Pl(正 nz na Po(奇校验 nc 2、D命令 格式: D [地址/范围] ?(1) D 地址 ?(2) D 范围 ?(3) D 功能:以两种形式显示指定范围的内存内容。一种形式为十六进制内容,一种形式为以相应字节的内容作为ASCII码的字符,对不可见字符以‘.’代替。 如果想知道内存10000H处的内容,可以用d 段地址:偏移地址的格式来查看,如输入?? -d 1000:0 使用 d 1000:9查看1000:9处的内容。 使用 d 1000:0 9查看1000:0-1000:9的内容 一进入Debug,可直接使用D命令直接查看,将列出Debug预设的地址处开始128个字节单元的内容 3、E命令 格式: E 地址 [单元内容表] (1) E 地址 功能: 不断显示地址及与之对应的任容,可连续键入新内容,直至新地址出现后键入回车Enter为止。 (2) E 地址 单元内容表 其中单元内容表是以空格分隔的十六进制数,或用’或”括起来的字符串,或者是二者的组合。 功能:将单元内容表逐一写入由地址开始的一片单元。 如将内存1000:0-1000:9单元中的内容分别写为0、1、2、3、4、5、6、7、8、9,则键入: ??? -e 1000:0 0 1 2 3 4 5 6 7 8 9 Enter 4、U命令 格式:U [地址/地址范围] (1) U? 地址 (2) U? 地址范围 (3) U 功能:将指定范围内的代码以汇编语句形式显示,同时显示地址及机器代码。这时应记下程序代码段的首地址(CS)和数据段地址(DS)。 注意:U指令后下一地址的值。这样可以实现连续反汇编。 5、A命令 格式:A [[段寄存器名/段地址:] 段内偏移] (1) A 段寄存器名:段内偏移 (2) A 段地址:段内偏移 (3) A 段内偏移 (4) A 功能:键入该命令后显示段地址和段内偏移并等待用户从键盘逐

文档评论(0)

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

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

1亿VIP精品文档

相关文档