微机实验debug入门.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机实验debug入门

一:实验目的和要求 1,学习,了解DEBUG常用命令(A,U,D,E,R,T,G,Q)的使用方法. 2,通过观察,了解部分数据传送指令的功能和行为特征. 3,了解DEBUG中FLAGS的各标志的表示方法. 二:实验设备和软件 PC,DEBUG,.EXE. 三:实验内容 数据传送类指令观察 (1)题目:首先用A命令从地址2000;0000 开始依次逐条输入以下所有指令,然后用T命令单步执行每一条指令,其他要求请参见各条指令的注释部分.通过实验理解每条指令的功能. 代码: STAK SEGMENT STACK ORG 0020 STAK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV AL,78H MOV AX,1234H MOV BX,0200H MOV [BX],AX MOV SI,[0200H] MOV DH,AL MOV WORD PTR 2[BX],5600H MOV CX,-1233H[BX+SI] PUSH AX PUSH 2[BX] PUSHF POP [BX] POP AX POPF XCHG AX,DX XCHG DL,2[BX] LEA DX,0FF00H[BX+SI] LAHF NOT AH SAHF CODE ENDS END START 在实验过程中记录指令执行的结果,并在实验报告中以表格的形式体现. (2)调试结果截屏以及说明 用R命令显示AL的值: 78H 用R命令显示AX的值: 1234H 用R命令显示BX的值: 0200H 用D命令显示存储器单元中的值(0200~0220) 用R命令显示SI的值: 0200H 用R命令显示DH的值: 34H 用D命令显示存储器单元中的值(0200~0220) 用R命令显示CX的值: 0000H 用D命令显示堆栈情况(栈顶指针SP:0012) 用D命令显示堆栈情况(栈顶指针SP:0010) 用D命令显示堆栈情况(栈顶指针SP:000E),和FLAGS标志对比(RF命令) 用D命令显示存储器单元中的值(0200~0220) 用R命令显时AX的值:5600H 查看FLAGS各标志情况(RF命令) 用R命令显示AX和DX的值 :AX为3400H DX为5600H 用R命令,D命令分别查看DL和存储器单元: DL为00H ,存储器单元0200~0220 查看DX的值 :DX=0300H 查看AH的值 :AH=16H 查看AH的值:AH=E9H 查看FLAGS低8位标志情况(RF命令) (3)所遇问题及解决办法 未定义堆栈段栈顶指针位置,系统默认0000H,出现压栈错误,加入堆栈段定义后解决。 查表程序 (1)题目:首先用E命令从DA:0200H开始的内存中写入一个0~9的平方表,然后用A命令输入以下查表程序并执行,观察查表结果. MOV AL,5 MOV BX,0200H XLAT 提示 :(1)输入的平房值表必须转换成十六进制数. (2) R命令只能查看16位寄存器的内容,其中16位的前8位是8位寄存器的内容, 后8位是低8位寄存器的内容。 代码: STAK SEGMENT STACK STAK ENDS DATA SEGMENT ORG 0200H TAB DB 0,1,4,9,16,25,36,49,64,81 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL,5 MOV BX,0200H XLAT CODE ENDS END START (2)调试结果截屏以及说明 查表结果为AL=19H (3)所遇问题及解决办法 因未定义堆栈段,链接时报错,加堆栈段定义后解决.

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档