汇编语言上机辅导-debug.ppt
Jinhou LI,AHUT程序设计语言理论程序设计语言理论汇编语言上机辅导汇编语言上机辅导-debugDEBUG:是专门为汇编语言设计的一种调试工是专门为汇编语言设计的一种调试工具,它通过步进,设置端点等方式为汇编语具,它通过步进,设置端点等方式为汇编语言程序员提供非常有效的调试手段言程序员提供非常有效的调试手段Jinhou LI,AHUT程序设计语言理论程序设计语言理论DEBUG的启动有两种方式的启动有两种方式不带文件名不带文件名 形式:形式:CDebug功能:出现提示符功能:出现提示符“-”,以当前内存的内容工作,以当前内存的内容工作带文件名带文件名形式:形式:C Debug d:path文件名文件名参数参数1参数参数2功能:装入指定的文件,它必须是以功能:装入指定的文件,它必须是以.exe后缀的执后缀的执行行 文件,两个参数是运行被调试文件时所需要文件,两个参数是运行被调试文件时所需要 的命令参数,可以没有的命令参数,可以没有Jinhou LI,AHUT程序设计语言理论程序设计语言理论主要命令主要命令汇编命令汇编命令A格式:格式:-A地址地址功能:该命令允许从指定地址输入汇编语句功能:该命令允许从指定地址输入汇编语句反汇编命令反汇编命令U格式:格式:-U地址地址功能:从指定地址开始,反汇编功能:从指定地址开始,反汇编32个字节;若个字节;若地址省略,则从上一个地址省略,则从上一个U命令的最后一条指令命令的最后一条指令的下一个单元开始显示的下一个单元开始显示32个字节个字节Jinhou LI,AHUT程序设计语言理论程序设计语言理论运行命令运行命令G格式:格式:-G=地址地址1地址地址2地址地址3功能:从地址功能:从地址1开始运行,地址开始运行,地址2,地址,地址3等等均为断点等等均为断点地址。如果没有地址参数,那么从当前地址开始运行地址。如果没有地址参数,那么从当前地址开始运行到结束程序的语句,到结束程序的语句,或者死机或者死机追踪命令追踪命令T格式:格式:-T=地址地址值值功能:如果没有值,那么从指定地址执行一条指令后功能:如果没有值,那么从指定地址执行一条指令后停下来,然后显示寄存器内容和状态值;否则执行由停下来,然后显示寄存器内容和状态值;否则执行由值所指定的值所指定的n条指令后停下来,显示寄存器和状态值条指令后停下来,显示寄存器和状态值Jinhou LI,AHUT程序设计语言理论程序设计语言理论显示内存单元内容命令显示内存单元内容命令D格式:格式:-D地址地址功能:从指定地址开始显示一段存储区域的内功能:从指定地址开始显示一段存储区域的内容(容(128个)个)修改内存单元内容的命令修改内存单元内容的命令E格式格式1:-E地址地址 内容表,如内容表,如E2000:0100 F3“XYZ”8d功能:用给定的内容代替指定范围的单元内容功能:用给定的内容代替指定范围的单元内容Jinhou LI,AHUT程序设计语言理论程序设计语言理论格式格式2:-E地址地址功能:显示指定地址存储单元的内容,可以马上输入功能:显示指定地址存储单元的内容,可以马上输入修改的数据,回车有效;或者敲空格显示下一个,以修改的数据,回车有效;或者敲空格显示下一个,以此类推此类推显示显示CPU内部寄存器内容和标志位状态内部寄存器内容和标志位状态格式格式1:-R功能:显示所有寄存器内容和标志位状态等功能:显示所有寄存器内容和标志位状态等格式格式2:-R 寄存器名寄存器名功能:显示指定寄存器内容。如果直接回车,那么寄功能:显示指定寄存器内容。如果直接回车,那么寄存器内容不变;如果要修改,则键入需要修改成的值存器内容不变;如果要修改,则键入需要修改成的值再回车再回车Jinhou LI,AHUT程序设计语言理论程序设计语言理论格式格式3:-RF功能:显示各个标志位的状态,后跟提示符功能:显示各个标志位的状态,后跟提示符“-”。如果要修改,在提示符后键入修改值,。如果要修改,在提示符后键入修改值,键入的顺序任意键入的顺序任意键入的修改值如下页的表键入的修改值如下页的表Jinhou LI,AHUT程序设计语言理论程序设计语言理论标志位的符号值标志位的符号值标志名标志名置位置位复位复位溢出溢出Overflow(是是/否否)OVNV方向方向Direction(减量减量/增量增量)DNUP中断中断Interrupt(允许允许/屏蔽屏蔽)EIDI符号符号Sign(负负/正正)NGPL零零Zero(是是/否否)ZRNZ辅助进位辅助进位Auxiliary Carry(是是/否否)ACNA奇偶奇偶Parity(偶偶/奇奇)PEPO进位进位Carry(是是/否否)CYNCJinhou LI,AHUT程序设计语言理论程序设计语言理论退出退出Debug命令命令Q格式:格式:-Q功能:退出功能:退出Debug程序,返回程序,返回DosJinhou LI,AHUT程序设计语言理论程序设计语言理论利用利用Debug编程编程题目题目1:使用堆栈段将:使用堆栈段将AX和和BX的内容进行的内容进行 交换交换题目题目2:将:将0500h开始的开始的100个内存单元的内个内存单元的内 容置成容置成55h,不管原来的内容为何,不管原来的内容为何