关于debug中p命令的一个问题
初学汇编,在执行一个教材中的小程序是出现一点问题,用debug中的t命令跟踪程序的执行时,跟踪到int 21h时,教材上说到了这要用p命令执行,输入p按回车应该显示program terminated normally,可我用p执行后显示^error,试几次都一样,无意中输入t试了下,结果屏幕显示program terminated normally.真见鬼!在网上搜了下,好想和书上说的一样,也就是用p.不知道是我的debug程序有问题还是其他原因,请各位哥哥姐姐赐教.
我用的xp系统,masm5.0(在网上下的,后来才知道系统有自带的)
问题点数:20、回复次数:7Top
1 楼zara(Kyrie eleison)回复于 2006-08-15 14:13:24 得分 20
用 p 命令应该没有问题的才对, 在提示 ^error 时, 那个 ^ 指向的上面一行自其位置向后面是些什么内容? t 命令的问题, 楼主提到的说法, 是针对比较早期的 debug 而言的. 那时的 debug 将 int 指令当做普通的指令来处理的, 这样 t 命令会进入中断例程中, 现在的 debug 的 t 命令对 int 指令进行了识别, 将其作为单一指令处理了, 不再进入中断代码中了.Top
2 楼saraf()回复于 2006-08-15 15:35:57 得分 0
谢谢回复.具体过程就是到了该执行int 21这步时,在提示符后面输入p,然后按回车,屏幕显示如下
-p
^error
不过,原因已经找到,像你说的一样,是debug版本的问题.我用系统自带的debug重新运行了一下,一切正常,用p命令是中断,用t命令是接着执行下面的指令.
我之所以不用系统自带的debug,是因为现在用的是从我老师挂在网上的课程计划里tools链接上下的,我非常信任.不过现在看来,微软似乎比老师跟令人放心些,唉Top
3 楼zara(Kyrie eleison)回复于 2006-08-15 16:05:18 得分 0
另外的调试工具啊? 那可能是它压根儿就没有 p 这个命令. 试试 ? 命令看下它的命令列表Top
4 楼saraf()回复于 2006-08-15 16:28:01 得分 0
...连?命令都没有Top
5 楼zara(Kyrie eleison)回复于 2006-08-15 20:13:37 得分 0
没有的话, 不介意的话, 就算了. 要不就再试试 h, help 命令. 也可能确实没有帮助的Top
6 楼pcsir007()回复于 2006-08-15 20:34:39 得分 0
用和汇编器一套的debug吧Top
7 楼bbbbcccc()回复于 2006-08-16 12:06:22 得分 0
http://valenhua.go3.icpcn.com/Top




