|
|
发表于 2012-7-8 15:43:35
|
显示全部楼层
都过去这么多天了,不知道您解决了没有....
' u) G, B/ b: y q5 I4 _
4 ^5 k% H9 n, G5 T2 O2 N1 o D/ @% n8 s8 m+ `. ` _( b3 E; S! ~
: C+ x# T# O1 N$ ?# {( ]# `
debug xxx.exe (xxx是你的文件名) 回车
# C/ W4 B- e# ]3 V" F4 i9 s. n. U! ]/ ^' U8 S
-u (查看程序的汇编指令) 回车# Y `8 t- a% O- t$ l/ I
4 L9 e4 X6 J9 _' [8 l" e
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)
9 B, o, R9 M+ |" S& b+ gmov ds, ax
0 U% c/ @3 n1 s6 c- F: T5 a" n/ Qmov bx, 05 J- S% g6 o/ k) z- M+ ^
(下面的指令,略)0 B1 s/ ~/ {" ^7 r, ?6 G1 `
9 `& Q' `( m$ E
-d 1234:0 回车, 就可以看到【程序执行前的数据段的内容】
. @( C& F1 F3 P8 g; ]% |4 b7 d( m# a0 A+ U! }- e) ]
-g (执行程序) 回车,就可以看到【program terminated normally】; }; k7 L5 r1 | V" [6 A. ]* M
! _; T( e, [0 q& w! ~' Q# P然后,再次, M7 A X' s* l, a1 s* g8 L9 d
. g$ ~8 y6 o5 E) g; i, W
-d 1234:0 回车, 就可以看到【程序执行后的数据段的内容】
7 Y. D3 f/ R' d& b2 N |
|