1) DEBUG的进入 ⑴如果是首次进入DEBUG编程,则只要在DOS提示符下键入DEBUG ↙,即可进入DEBUG环境,显示提示符“-”。 ⑵如果要对某个程序使 用DEBUG进行调试,只要在DOS提示符 下键入DEBUG 文件名↙,即可进入DEBUG环境,显示提示符“-”。 2) 程序的 汇编与反汇编 ⑴源程序可以在DEBUG下,用汇编命令A输入到内存中,只需在DEBUG提示符“-”下,键入汇编命令A ↙,并在显示“段寄存器地址:偏移地址”后面键入你自己编写的程序,每键入一条,按一次回车键。 -A ↙ ;↙表示按回车键,下同 127B:0100 MOV CX,5 ↙ 127B:0103 MOV AL,0 ↙ 127B:0105 MOV BX,2000 ↙ ┇ | |
⑵如果进入DEBUG时是使用“DEBUG 文件名↙”进入的,那么在进入DEBUG状态后,可用反汇编命令U,将调入的程序显示出来: -U ↙ ;↙表示按回车键 127B:0100 B90500 MOV CX,5 127B:0103 B000 MOV AL,0 127B:0105 BB0020 MOV BX,2000 ┇ | |
3) 在DEBUG状态下,对所编写文件存盘的步骤 ① 给程序 命名 -N 文件名.COM ↙ ② 将文件 长度放入BX、CX中(高位放入BX,低位放入CX中) -R BX ↙(注意!!!由于文件长度一般较小,所以切记BX中付0值) -R CX ↙(文件最末偏移地址 减去文件开始的偏移地址即文件长度) ③ 用写盘 命令W把正在调试的内存中程序写入磁盘中 -W 〈地址〉↙(文件开始 地址) 退出DEBUG状态用Q命令:-Q ↙ 4) 在DEBUG状态下,建议使用DOS分配给用户的内存可 用区 在DEBUG状态下,用户可对所有寄存器、RAM内存随意 查看和修改,但由于对DOS操作系统在内存中存放情况不了解,可能会将存放有操作系统程序的内存内 容破坏,从而可能引起系统的异常,出现死机现象,故建议使用DOS分配给用户的内存可用区,其低端 地址是刚进入DEBUG时,用命令R查看到 的DS:IP。 5) 用连续 执行命令G应注意问题 用连续执行命令G执行程序时,注意给出执行程序的首地址,并注意执行的程序中有返回DEBUG功能的程序段,如 指令INT 20H或断点设置INT 3,否则发出命令后,很容易出现死机,原因是无返回程序 段使系统返回命令接受状态,CPU将不断到内存中取指令、执行指令,使用户失去对系统的控制。为避 免这种情况,可在用户程序段结尾加上一条INT 20H指令,或INT 3指令。 6) 关于任务5 DS:2000单元开始的5个 字节内容,可用填充命令F给其赋值。 -F 2000 L5 01 02 03 04 05↙(在执行程序前用F命令给单元赋值) 之后,运行任务5程序段,检查运行结果是否正确。 【思考题】 1.指令MOV [BX],AX中,操作数[BX]的 寻址方式是什么?在DEBUG下执行完该指令后,如何查看执行结果? 2.可否随意在DEBUG提示符“-” 后不带参数发出命令G?什么情况下使用命令G时, 可不用“=”给出执行首地址? |
发表评论