鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
2 n. S2 V5 h; s0 Q* Gdatasg segment2 y6 q1 z. B/ G+ ~8 a6 M
        db '1.ibm   '
8 _+ B8 Z2 ]% \( L& ?& W. V; B        db '2.dec   '6 }  r, V9 z8 I, f* l7 Z( Q
        db '3.dos   '
1 Z7 |* J; g$ K( x) e- Gdatasg ends/ w8 t+ u& N& i
& e' C; g! U* p# a5 a* s8 P
codesg segment
- G9 {7 F4 |1 xstart:        mov ax,datasg
) k) j- I& e7 @5 D; \/ w. t                mov ds,ax
! f- L1 J6 t0 S, z: g                mov bx,0, P" f# D7 e; n  S* [9 a. B
               
; q. ]3 `  t2 t+ f                mov cx,3$ o8 u4 o; R) O3 r+ ]4 |
        s:        mov al,[bx+2]
3 p7 m# w0 i$ p6 I                and al,11011111b; V2 |* `7 g2 s
                mov [bx+2],al4 @% S8 l( [/ P  k! c. y) v  H# L
                add bx,16: `1 w* i1 g) k* m( L! ^  k& F% n9 d; u
                loop s' W$ Q* c# Q' B3 O- L$ e( L
               
) A  M1 ~( |6 V, F  `& I                mov ax,4c00h( B5 X* F1 y3 N4 f; N
                int 21h
* ?6 ]6 f( U! w; @9 k& S$ v3 O, ?codesg ends
( S# a9 ]( ~  h% I1 nend start5 a0 Z% ~" T% e% K
               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
6 i+ i( k9 j2 D& q. z  g% z- I
, y! A7 T+ }+ B; t
) w, ]0 v6 [/ {. s) v* o) M3 n
# G1 L. v$ N- j7 A. i" jdebug xxx.exe (xxx是你的文件名) 回车
2 K8 G" J$ X& v9 E- l0 E  S& ]! |( j8 P: u; V* {
-u  (查看程序的汇编指令) 回车% O5 Y% F. `0 e+ E; W% a- u) I

' M7 U7 B  ~% A2 S" v* omov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)  h% `; v# S8 A2 |6 ^( Q
mov ds, ax
& {6 `+ s9 L8 {( G' H; _mov bx, 0
9 F/ M2 o7 S6 Q' [(下面的指令,略)6 ]2 i7 i( @8 N" {; A- a" q; ]
, g1 K+ B. e0 `; H6 U6 w, J
-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】7 o- F1 T3 x! q

& y' S; [7 t" X! z-g (执行程序) 回车,就可以看到【program terminated normally】  j4 T$ ?; J7 e1 z7 e( N

) q/ I1 t+ K9 g* r然后,再次
% F$ `' J  C- }+ w
/ r4 _: ~" x# Y2 ^% P* l+ O-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】
8 k" [4 t4 \; O9 z
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后9 O$ m4 D7 n) u2 V7 V1 N+ c, F
-d  ds+10h:0
, g1 u9 U: ]. R4 y3 r看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-1-20 11:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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