如何使用debug调试看这个程序的结果?
时间:2010-12-20
来源:互联网
我在进行debug调试时,忘记怎么进行操作了,好像只要用-u,-g,-d,就行了!可结果就是不对,截屏如下,请大虾帮忙看看……谢了……



程序如下:
DATA SEGMENTM DW 1,2,3,-6,7,58
KZ DW ($-M)/2
P DW 20 DUP(?)
N DW 20 DUP(?)
COUNTP DW ?
COUNTN DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
LEA BX,M
MOV SI,0
MOV DI,0
MOV CX,KZ
MOV COUNTP,0
MOV COUNTN,0
NEXT:MOV AX,[BX]
CMP AX,0
JL NN
MOV P[SI],AX
ADD SI,2
INC COUNTP
JMP PP
NN: MOV N[DI],AX
ADD DI,2
INC COUNTN
PP:ADD BX,2
LOOP NEXT
MOV AH,4CH
INT 21H
CODE ENDS
END START



程序如下:
DATA SEGMENTM DW 1,2,3,-6,7,58
KZ DW ($-M)/2
P DW 20 DUP(?)
N DW 20 DUP(?)
COUNTP DW ?
COUNTN DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
LEA BX,M
MOV SI,0
MOV DI,0
MOV CX,KZ
MOV COUNTP,0
MOV COUNTN,0
NEXT:MOV AX,[BX]
CMP AX,0
JL NN
MOV P[SI],AX
ADD SI,2
INC COUNTP
JMP PP
NN: MOV N[DI],AX
ADD DI,2
INC COUNTN
PP:ADD BX,2
LOOP NEXT
MOV AH,4CH
INT 21H
CODE ENDS
END START
作者: lomper 发布时间: 2010-12-20
单步执行调试是用命令t,遇到int指令则用p(当然其它指令也可以用p)。
t和p的区别就是,遇到int,call,loop等指令,t会继续跟踪下去,而p则跳到这条指令的下一句(相当于把这条指令内含的一大堆指令一下执行完)
t和p的区别就是,遇到int,call,loop等指令,t会继续跟踪下去,而p则跳到这条指令的下一句(相当于把这条指令内含的一大堆指令一下执行完)
作者: shzhfu 发布时间: 2010-12-20
0C07:0051 5D POP BP
0C07:0052 C3 RET
0C07:0053 90 NOP
0C07:0054 55 PUSH BP
0C07:0055 8BEC MOV BP,SP
0C07:0057 56 PUSH SI
0C07:0058 C45E04 LES BX,[BP+04]
0C07:005B 26 ES:
0C07:005C 807F0403 CMP BYTE PTR [BX+04],03
0C07:0060 7507 JNZ 0069
-g 44
AX=003A BX=000C CX=0000 DX=0000 SP=0000 BP=0000 SI=000A DI=0002
DS=0C00 ES=0BF0 SS=0C00 CS=0C07 IP=0044 NV UP EI PL NZ NA PE NC
0C07:0044 B44C MOV AH,4C
-d ds:0
0C00:0000 原数据[01 00 02 00 03 00 FA FF-07 00 3A 00] 06 00 正数[01 00 ..........:.....
0C00:0010 02 00 03 00 07 00 3A 00]-00 00 00 00 00 00 00 00 ......:.........
0C00:0020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0C00:0030 00 00 00 00 00 00 负数[FA FF]-00 00 00 00 00 00 00 00 ................
0C00:0040 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0C00:0050 00 00 00 00 00 00 00 00-00 00 00 00 00 00 05 00 ................
0C00:0060 01 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0C00:0070 B8 00 0C 8E D8 8D 1E 00-00 BE 00 00 BF 00 00 8B ................
0C07:0052 C3 RET
0C07:0053 90 NOP
0C07:0054 55 PUSH BP
0C07:0055 8BEC MOV BP,SP
0C07:0057 56 PUSH SI
0C07:0058 C45E04 LES BX,[BP+04]
0C07:005B 26 ES:
0C07:005C 807F0403 CMP BYTE PTR [BX+04],03
0C07:0060 7507 JNZ 0069
-g 44
AX=003A BX=000C CX=0000 DX=0000 SP=0000 BP=0000 SI=000A DI=0002
DS=0C00 ES=0BF0 SS=0C00 CS=0C07 IP=0044 NV UP EI PL NZ NA PE NC
0C07:0044 B44C MOV AH,4C
-d ds:0
0C00:0000 原数据[01 00 02 00 03 00 FA FF-07 00 3A 00] 06 00 正数[01 00 ..........:.....
0C00:0010 02 00 03 00 07 00 3A 00]-00 00 00 00 00 00 00 00 ......:.........
0C00:0020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0C00:0030 00 00 00 00 00 00 负数[FA FF]-00 00 00 00 00 00 00 00 ................
0C00:0040 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0C00:0050 00 00 00 00 00 00 00 00-00 00 00 00 00 00 05 00 ................
0C00:0060 01 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0C00:0070 B8 00 0C 8E D8 8D 1E 00-00 BE 00 00 BF 00 00 8B ................
作者: va_zaixuexi 发布时间: 2010-12-21
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28