Debug
来源:互联网 发布:js substring 编辑:程序博客网 时间:2024/05/20 23:33
Debug 是DOS,Windows 都提供的实模式(8086方式)程序的调试工具,使用他可以查看CPU各种寄存器中的内容,内存的情况和在机器码级跟踪程序的运行。
主要的Debug功能
R命令:查看、改变CPU寄存器的内容
D命令:查看内存中的内容
E命令:改写内存中的内容
U命令:将内存中的机器指令翻译为汇编指令;
T命令:执行一条机器指令
A命令: 以汇编指令的格式在内存中写入一条机器指令
进入Debug:
在DOS提示符下输入命令:debug
用R命令查看,改变CPU寄存器的内容:
显示内容:
修改某个寄存器内容:
r 寄存器名-改变指定寄存器内容
用D命令查看内存中的内容:
显示内容:
列出预设地址内存处128个字节的内容(默认显示8行,每行16个字节)
列出指定内存处的内容:
【d 段地址:偏移地址 结尾偏移地址】 来显示选定段的数据
显示2000:0 到2000:f 的16个数据
显示2000:0 到2000:2f 的48个数据
用E命令改变内存中的内容:
一种方式是【e 段地址:偏移地址 将要修改的数据】直接将修改该内存内容
另一种方式是组个询问式修改【e 段地址:偏移地址】回车 空格表示接受并继续修改 回车表示结束修改
用U命令将内存中的机器指令翻译成汇编指令
如机器码:
B8 23 011
BB 03 00
89 D8
01 D8
通过E命令写入内存中后再通过U命令翻译成汇编指令:
MOV ax,0123H
MOV bx,0003H
MOV ax,bx
ADD ax,bx
用A命令以汇编指令的格式在内存中写入机器指令
输入【A】或【A 段地址:偏移地址 】,根据提示输入汇编的指令,以空行结束(默认地址是CS为段地址,IP为偏移地址)
如指令:
MOV ax,0123H
MOV bx,0003H
MOV ax,bx
ADD ax,bx
对应的机器指令为:
如机器码:
B8 23 011
BB 03 00
89 D8
01 D8
用T命令执行机器指令
从CS:IP处开始执行命令,每次执行一条指令
用G命令执行机器指令
-G+偏移量,执行到指定位置处,如此处执行到076A:0010
- DEBUG
- debug
- DEBUG
- debug
- debug
- debug
- DEBUG
- Debug
- Debug
- debug
- debug
- DEBUG
- debug
- debug
- Debug
- debug《》
- Debug
- debug
- Floyed-Warshall-求最短路
- HTML5 aside元素
- leetCode练习(187)
- NSWindow支持Drag-and-Drop
- java保留n位小数
- Debug
- golang连接mysql数据库
- About Me
- 什么叫句柄(Handle)?
- 进程的死锁
- 网络爬虫之链接网页
- 卷积神经网络(CNN)前向传播算法
- 获取焦点失去焦点响应事件
- 命令导入dmp文件到oracle