debug
debug在程序的调试过程中有很大的作用,可以帮助程序员更加快速地解决问题,因此一定要熟练掌握各种命令。
-
R命令——查看、改变CPU寄存器的内容
格式:r 查看所有寄存器的内容;r 寄存器名 修改寄存器内容 -
D命令——查看内存中的内容
格式:d 段地址:偏移地址;d 段地址:起始偏移地址 结尾偏移地址 -
E命令——改写内存中的内容
格式:e 起始地址 数据 数据 数据… 或者采用提问的方式一个一个的改写内存中的内容 也可以用e命令像内存中写入字符和字符串 -
U命令——将内存中的机器指令翻译成汇编指令
显示输出分为3部分,每一条机器指令的地址、机器指令、机器指令所对应的汇编指令 -
T命令——执行一条机器指令
debug中单步执行一条指令 其实是一号中断 标志寄存器TF位为一
注意,使用T命令执行mov ss,ax时,指向栈顶的指令会自动执行,原因是防止栈顶指向错误的地方 -
A命令——以汇编指令的格式在内存中写入一条机器指令
比e命令更为方便地写入汇编指令 -
P命令
P命令可以用来执行int 21h指令和loop指令 -
G命令
g命令可以在debug中将所有指令执行完毕;也可以执行一部分指令,格式:
g 偏移地址
debug对于程序的调试极为重要,遇到问题不要想着投机取巧,而要一步一步跟踪执行,才能发现问题所在。注意在编写一号中断时,因为单步执行需要一号中断,所以会出现问题,这时在debug中调试时可以先将中断处理程序放入其他地方,比如7ch处,这样就可以使用T命令跟踪调试了。
DOS中的命令
可以用cls来清屏