鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg9 c% E" P% \' e3 T
datasg segment
7 A. s: a. P$ z4 I5 ~        db '1.ibm   '
5 ?1 n* u$ K5 I* ~, {* B2 v        db '2.dec   '
0 i/ ~, q9 r5 n2 D" M7 E) P, m1 j        db '3.dos   '- K! N/ B8 N, m& n$ L
datasg ends8 i2 g, }- [2 z( K

) Z$ U" d1 l& L8 b- Ccodesg segment$ F0 @! q' ?5 M# Z$ b% Q
start:        mov ax,datasg
/ Z6 e1 Z# u9 l( L                mov ds,ax8 U! Y" {0 c; g$ l! l  N  Q
                mov bx,0  U& G1 s1 F# X$ B# J
                - h4 B5 o, F( u% O8 x- a
                mov cx,3
0 j+ A+ {9 r; `' G: p. i% C        s:        mov al,[bx+2]
. n. G; Z# |1 |: \& _; b2 e* _                and al,11011111b0 ^+ e0 F7 p9 b) l+ M. q" a
                mov [bx+2],al) T& g# q2 E" n3 }- K
                add bx,16
9 r( d1 X( u# k0 }5 T: u                loop s5 G) i7 `4 `0 k+ F7 H
               
9 f2 @  D4 G/ I5 [4 p& d. P/ s% {+ e                mov ax,4c00h3 T7 t( _5 {. }+ A6 ~' y
                int 21h" S5 G: \) e2 m9 n7 ~
codesg ends
* \. D) i& O8 Dend start
9 x) M, i1 Z" H' k: U               
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-1 01:45:59 | 显示全部楼层
这个看小甲鱼的视频呢,不能传图,debug +你的文件名.exe  ,然后-r一下,找到数据段入口,我的是 mov ax,14c0,-g一下 这时显示program terminated normally  ,然后 -d 14c0:0000
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-8 15:43:35 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....2 i- H" o  K5 Y, \: x( u) O

* W2 K4 U( s/ _3 T" f& `+ n
& O$ k% i) E) J2 \
/ t  ]/ a# P$ M# K2 n5 [3 d8 P* {debug xxx.exe (xxx是你的文件名) 回车9 W0 ?8 F$ m) F- v: C, n$ k, s/ Q
1 F7 s# {, @; i, C% r! d
-u  (查看程序的汇编指令) 回车9 X7 n3 r( N! C/ M

; s* U7 `; ?0 T3 Cmov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)2 u/ ]# [! m; x2 |3 v1 k1 w4 `  m
mov ds, ax
; Z0 F1 O. l9 }/ W" y9 }9 rmov bx, 05 c+ G0 v; h. k% s) p. A
(下面的指令,略), O) @+ {, Z; R* [

/ A! S' O- |; O/ H3 Y9 Q6 G! L-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】
6 _+ H2 h- B- ^7 M9 b
! V! L8 w$ L/ f1 v, T  R" g-g (执行程序) 回车,就可以看到【program terminated normally】
+ [# n( O0 ~8 }1 I/ U% i2 p. D
5 G! y  J% L& s* h" a& R然后,再次% h2 H) t0 l' l; k9 m

' C! ?; G, b; _' `-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】; t& K" i- X3 O- Y- F
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后
4 c0 b; g: i$ s+ K2 W1 ]* a-d  ds+10h:0
$ v: Z# Q0 n9 M: J" [, W看要看的字母的数字 如果大于40小于61就是大写字母。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

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

GMT+8, 2024-11-22 19:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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