实验二 汇编语言程序设计-学生.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  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文档。上传文档
查看更多
实验二 汇编语言程序设计-学生

实验二 汇编语言程序设计 一、实验目的 掌握运算类指令的编程及调试方法 掌握分支、循环、子程序调用等基本的程序结构。 2、学习综合程序的设计、编制及调试 二、DEBUG调试软件介绍 DEBUG.EXE程序是专门为分析、研制和开发汇编语言程序而设计的一种调试工具,具有跟踪程序执行、观察中间运行结果、显示和修改寄存器或存储单元内容等多种功能。它能使程序设计人员或用户触及到机器内部,因此可以说它是80X86CPU的心灵窗口,也是我们学习汇编语言必须掌握的调试工具。WINDOWS操作系统安装时自带有DEBUG.EXE程序,不需另外安装。 1、DEBUG程序的使用 在DOS提示符下键入命令: C:\ DEBUG [盘符:][路径][文件名.EXE][参数1][参数2] 这时屏幕上出现DEBUG的提示符“-”,表示系统在DEBUG管理之下,此时可以用DEBUG进行程序调试。若所有选项省略,仅把DEBUG装入内存,可对当前内存中的内容进行调试,或者再用N和L命令,从指定盘上装入要调试的程序;若命令行中有文件名,则DOS把DEBUG程序调入内存后,再由DEBUG将指定的文件名装入内存。 2、DEBUG的常用命令 (1)汇编命令 A 格式:A [起始地址] 或 A ;每输入完一条指令,用回车键来确认。 功能:将输入源程序的指令汇编成目标代码并从指定地址单元开始存放。若缺省起始地址,则从当前CS:100 (段地址:偏移地址)地址开始存放。A命令是按行进行汇编,主要是用于小段程序的汇编或对目标程序的修改,具有检查错误的功能。如有错误,用^Error提示。然后重新输入正确命令即可。 注:DEBUG的A命令中数字部分输入的默认格式是16进制。如输入10,对于计算机而言,就是10H。另外A命令不支持标识符的输入。只能用准确的段地址:偏移地址来设置跳转的位置。 (2)反汇编命令 U 格式1:U [起始地址] 格式2:U [起始地址][结束地址|字节数] 功能:格式1从指定起始地址处开始固定将32个字节的目标代码转换成汇编指令形式,缺省起始地址,则从当前地址CS:IP开始。 格式2将指定范围的内存单元中的目标代码转换成汇编指令。 (3)显示、修改寄存器命令 R 格式:R[寄存器名]或R 功能:若给出寄存器名,则显示该寄存器的内容并可进行修改。缺省寄存器名,则按以下格式显示所有寄存器的内容及当前值(不能修改)。 AX=0000 BX=0004 CX=0020 DX=0000 SP=0080 BP=0000 SI=0000 DI=0000 DS=3000 ES=23A0 CS=138E IP=0000 NV UP DI PL NZ NA PO NC 138E:0000 MOV AX,1234 -R AX ;输入命令 AX 0014 ;显示AX的内容 : ;供修改,不修改按回车。 若对标志寄存器进行修改,输入:-RF 屏幕显示如下信息,分别表示OF、DF、IF、SF、ZF、AF、PF、CF的状态。 NV UP DI PL NZ NA PO NC 不修改按回车键。要修改需个别输入一个或多个此标志的相反值,再按回车键。R命令只能显示、修改16位寄存器。 (4)显示存储单元命令 D 格式1:D[起始地址] 格式2:D[起始地址][结束地址|字节数] 功能:格式1从起始地址开始按十六进制显示80H(128)个单元的内容,每行16个单元,共8行,每行右边显示16个单元的ASCII码,不可显示的ASCII码则显示“·”。格式2显示指定范围内存储单元的内容,其他显示方式与格式1一样。如果缺省起始地址或地址范围,则从当前的地址开始按格式1显示。 例如: -D 200 ;表示从DS:0200H开始显示128个单元内容 -D 100 120 ;表示显示DS:0100-DS:0120单元的内容 说明:在DEBUG中,地址表示方式有如下形式: 段寄存器名:相对地址,如:DS:100 段基值:偏移地址(相对地址),如:23A0:1500 (5)修改存储单元命令 E 格式1:E[起始地址] [内容表] 格式2:E[地址] 功能:格式1按内容表的内容修改从起始地址开始的多个存储单元内容,即用内容表指定的内容来代替存储单元当前内容。 例如:—E DS:0100 VAR 12 34 表示从DS:0100 为起始单元的连续五个字节单元内容依次被修改为 V、A、R、12H、34H。 格式2是逐个修改指定地址单元的当前内容。 如:—E DS:0010 156F:0010 41.5F 其中156F:0010单元原来的值是41H,5FH为输入的修改值。若只修改一个单元的内容,这

文档评论(0)

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

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

1亿VIP精品文档

相关文档