DEBUG命令详细讲解

DEBUG命令详细讲解

ID:46790437

大小:96.50 KB

页数:18页

时间:2019-11-27

DEBUG命令详细讲解_第1页
DEBUG命令详细讲解_第2页
DEBUG命令详细讲解_第3页
DEBUG命令详细讲解_第4页
DEBUG命令详细讲解_第5页
资源描述:

《DEBUG命令详细讲解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、......DEBUG命令详解   Debug:A(汇编)直接将8086/8087/8088记忆码合并到内存。该命令从汇编语言语句创建可执行的机器码。所有数值都是十六进制格式,必须按一到四个字符输入这些数值。在引用的操作代码(操作码)前指定前缀记忆码。a[address]参数address指定键入汇编语言指令的位置。对address使用十六进制值,并键入不以“h”字符结尾的每个值。如果不指定地址,a将在它上次停止处开始汇编。有关将数据输入到指定字节中的信息,请参看DebugE(键入)。有关反汇编字节的信息,请参看DebugU(反汇编)说明使用记忆码段的替代记

2、忆码为cs:、ds:、es:和ss:。远程返回的记忆码是retf。字符串处理的记忆码必须明确声明字符串大小。例如,使用movsw可以移动16位的字串,使用movsb可以移动8位字节串。汇编跳转和调用汇编程序根据字节替换自动将短、近和远的跳转及调用汇编到目标地址。通过使用near或far前缀可以替代这样的跳转或调用,如下例所示:-a0100:05000100:0500jmp502;a2-byteshortjump0100:0502jmpnear505;a3-bytenearjump0100:0505jmpfar50a;a5-bytefarjump可以将near

3、前缀缩写为ne。区分字和字节内存位置当某个操作数可以引用某个字内存位置或者字节内存位置时,必须用前缀wordptr或者前缀byteptr指定数据类型。可接受的缩写分别是wo和by。以下范例显示两种格式:decwo[si]negbyteptr[128]指定操作数Debug使用包括在中括号([])的操作数引用内存地址的习惯用法。这是因为另一方面Debug不能区分立即操作数和内存地址的操作数。以下范例显示两种格式:movax,21;loadAXwith21h学习好帮手......movax,[21];loadAXwiththe;contentsof;memoryl

4、ocation21h使用伪指令使用a命令提供两个常用的伪指令:db操作码,将字节值直接汇编到内存,dw操作码,将字值直接汇编到内存。以下是两个伪指令的范例:db1,2,3,4,"THISISANEXAMPLE"db'THISISAQUOTATIONMARK:"'db"THISISAQUOTATIONMARK:'"dw1000,2000,3000,"BACH"范例a命令支持所有形式的间接注册命令,如下例所示:addbx,34[bp+2].[si-1]pop[bp+di]push[si])还支持所有操作码同义词,如下例所示:loopz100loope100ja2

5、00jnbe200对于8087操作码,必须指定wait或fwait前缀,如下例所示:fwaitfaddst,st(3);thislineassembles;anfwaitprefixDebug:C(比较)比较内存的两个部分。crangeaddress参数range指定要比较的内存第一个区域的起始和结束地址,或起始地址和长度。address指定要比较的第二个内存区域的起始地址。有关有效address值的信息,请参看“Debug说明”。说明如果range和address内存区域相同,Debug将不显示任何内容而直接返回到Debug提示符。如果有差异,Debug将

6、按如下格式显示:address1byte1byte2addess2范例学习好帮手......以下命令具有相同效果:c100,10f300c100l10300每个命令都对100h到10Fh的内存数据块与300h到30Fh的内存数据块进行比较。Debug响应前面的命令并显示如下信息(假定DS=197F):197F:01004DE4197F:0300197F:01016799197F:0301197F:0102A327197F:0302197F:010335F3197F:0303197F:010497BD197F:0304197F:01050435197F:030

7、5197F:01077671197F:0307197F:0108E611197F:0308197F:0109192C197F:0309197F:010A800A197F:030A197F:010B367F197F:030B197F:010CBE22197F:030C197F:010D8393197F:030D197F:010E4977197F:030E197F:010F4F8A197F:030F注意列表中缺少地址197F:0106和197F:0306。这表明那些地址中的值是相同的。Debug:D(转储)显示一定范围内存地址的内容。d[range]参数rang

8、e指定要显示其内容的内存区域的起始和结束地址,或起始

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。