鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
7 P- p- I  t& Z, g6 Hdatasg segment, S- |3 g# ]9 [- ]
        db '1.ibm   ', a$ t9 v, e9 A! L$ c  c
        db '2.dec   '  r& i9 b7 f/ p* ?% l
        db '3.dos   '% Y2 V/ X. i" z9 |4 {4 |0 M; U3 [
datasg ends( O. v$ C# R+ S6 ]
  f3 C# M: K" O$ k1 i6 C
codesg segment, A2 Z6 X' m$ A" `1 ?
start:        mov ax,datasg
* p7 u! k: z2 w0 B                mov ds,ax
# \7 d; j9 U. n+ i5 n                mov bx,0  @! E! F) K; f) T
               
) d; _/ `. n( V' h! j* Z                mov cx,3+ Y2 q/ T( F, _& `( {. {1 {; L& y
        s:        mov al,[bx+2]: a, W" O; \: g$ y, X  r* k; }
                and al,11011111b$ J1 B% S4 ]0 f- n2 c4 W
                mov [bx+2],al5 t& E: ?$ I, C/ D5 y4 O- r
                add bx,16* A" z: r# o5 R
                loop s
% [; J9 r* o7 E4 Q# {               
8 L4 M* [, n- I+ C# o+ }                mov ax,4c00h
) A7 A- Y" E* z2 ?1 m9 i0 M                int 21h
6 [, r& b  y# M$ hcodesg ends7 r2 [" E! ~' f  m2 a. c
end start& w( j* a. e2 U+ i; {3 s
               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....% \% r! h. Z( q( u: c; }  x

) S& u, s+ k0 g+ ~  `1 F' G! U8 J; G7 j4 V2 U, s+ l" u. X

6 p8 l6 e% k( F. Y% L& tdebug xxx.exe (xxx是你的文件名) 回车
+ m& ^1 `" f. P, o$ j+ M5 p! q2 X2 U. _' G
-u  (查看程序的汇编指令) 回车
# f8 W3 S; L5 R& q( ]* V8 b
. ^# G8 K& T" J' ?% R  C/ r0 Y3 {. Amov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234); @  t$ k4 ?/ m7 W3 e4 Y- z
mov ds, ax
3 G$ X5 [1 y8 q/ k& s; ]$ Fmov bx, 0
- g2 N+ u1 W) k2 s* t# ~3 D(下面的指令,略)( ?" I8 D; w7 L# k( b7 y; F
* M  M; W0 u$ d4 o* I
-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】
6 Y* L% L0 `* ^( T& K4 v7 I. w9 U) X- H  J3 `. r( u% D0 ?
-g (执行程序) 回车,就可以看到【program terminated normally】
4 f" e: f/ l8 \# c9 F2 H( ^+ b' T% s  F0 T. m# C+ q6 G
然后,再次! G* H2 I5 Q2 f, W1 r6 K
: W7 j( D* o+ Y: v
-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】
- r; m9 x& g* _" T/ `% ?
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后% c. W# K3 a' p' K7 F7 g" Q4 `
-d  ds+10h:0
4 K6 w' w5 C& j4 r, d8 o% w# [看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-3-7 16:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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