鱼C论坛

 找回密码
 立即注册
查看: 3213|回复: 3

请问像一下这个程序,我怎么查看最后首字母是否变成大写了呢,怎么debug呢??谢谢

[复制链接]
发表于 2012-6-23 15:57:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
assume cs:codesg,ds:datasg
. G/ C& Y0 U8 n. @5 W" Tdatasg segment
4 o$ [4 N) q$ Q3 ?' A0 e# Q5 m+ x# V        db '1.ibm   '
+ ^9 v  s4 D6 e* N) u# ], }        db '2.dec   '* c- e9 o6 G7 U6 F
        db '3.dos   '+ ]8 I5 [/ p+ L+ H8 M% D$ D' I
datasg ends' T. x6 Z& e0 a! Y

8 W  `: N) T* |) M8 H" A9 ]codesg segment
" o( `! K+ A! [3 j9 O6 N1 p- \6 xstart:        mov ax,datasg
/ }$ r$ |2 U1 t0 p8 O                mov ds,ax/ {. K( G: Q% \, T! ~
                mov bx,0
# m7 y- m' [% B% N  e& T4 v1 L                ) V: [  ^6 M& V# D& e0 c
                mov cx,3
1 ^' n2 M+ `" ~8 ~" A/ |% X        s:        mov al,[bx+2]% ^4 u0 Z" I, I
                and al,11011111b
7 p# B5 Y& ^; O) |: r( ~1 ~                mov [bx+2],al- M- `/ o  S$ ^: G5 i4 g
                add bx,160 @, m" B- d0 H0 o* X
                loop s
6 j; p7 r" v2 k, z" R               
3 e) `( S+ O5 L# k                mov ax,4c00h
* t4 C; ]3 v: L                int 21h, u& M2 x$ p$ {& k* B" v
codesg ends6 Y; l( X: P5 s9 ?5 ?" p7 D; G
end start
0 v$ z0 s( ^1 O; `/ P               
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-1 01:45:59 | 显示全部楼层
这个看小甲鱼的视频呢,不能传图,debug +你的文件名.exe  ,然后-r一下,找到数据段入口,我的是 mov ax,14c0,-g一下 这时显示program terminated normally  ,然后 -d 14c0:0000
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-8 15:43:35 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....3 ?: C( s3 K# z0 |. J
  Y6 j; o3 ?8 w9 \; U! U

: y3 E$ {9 b! ~2 E. Z
7 Z& T4 z( i. H4 c  j- [debug xxx.exe (xxx是你的文件名) 回车
* r+ g4 S5 L9 x! E7 a8 K  F5 N/ m2 Z' b2 @
-u  (查看程序的汇编指令) 回车
. m( x/ D3 b- @0 l. E3 r8 {, i& O* G3 \/ r5 |7 ^% a
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)
# d: Q. `$ y2 i) Zmov ds, ax6 l  I7 L# Q. |
mov bx, 0* D  ~6 A$ o$ t& Q5 ^  Y+ a: u
(下面的指令,略)( X' p) {" S8 B* Z: _$ ?, [$ l+ x

1 S$ N7 L; v. k/ U$ u, ]) `# \+ L( g-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】! H5 S, ^! r2 s: s  R
. t" A2 ?& h! J
-g (执行程序) 回车,就可以看到【program terminated normally】
' o0 U9 y3 \( [4 r- D/ N
" v3 V9 M2 ?( s3 K- @; q然后,再次
8 i- H0 p6 h/ C) T
7 C7 S# W- v. F5 c-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】
0 n: H! d/ ]0 ]
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后' c: S2 X! H6 F+ C1 u
-d  ds+10h:0% ]0 F, ~9 G6 w( N5 L. f: C7 S
看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-20 20:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表