鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg  j5 l3 T- w8 `
datasg segment2 V: j: q/ e$ m1 Y+ \
        db '1.ibm   '
3 l* l& ^- [3 k- m% H8 z! d' Y3 e        db '2.dec   '
+ p8 Q8 @% L) M# u1 \) ]$ a; N        db '3.dos   '- t( @- J; V$ e  u3 v. K6 R/ P
datasg ends
' z5 Q) t& K& W) \- Q; y+ c5 ~4 D
9 n" H7 c* n: H: [  @: g" xcodesg segment5 V' \, ^* I" Q# P) g/ C& e" Q: @* G
start:        mov ax,datasg
+ x9 ~! q8 i# W  b                mov ds,ax
6 |, j+ z- m: T4 I- ^2 h1 E+ B                mov bx,02 W$ z# q+ j5 }
               
0 Z! O+ `( L3 P! Q7 _5 s                mov cx,3
8 G4 [' ~( V. l6 m8 Y5 n        s:        mov al,[bx+2]
* \0 d; _6 v- S3 x# f                and al,11011111b! m$ N0 `- W% ?/ J
                mov [bx+2],al6 x7 ?5 g4 X4 k7 c- e
                add bx,16) S8 C6 T; N) v1 k5 a* `1 A% p
                loop s& h4 D, _" O, v* A; W
                ) C; M) g/ f2 [% v8 R3 E7 I8 Q4 ^
                mov ax,4c00h
; D8 p7 V! v# {6 N$ ]: p) @                int 21h- w7 H! F, v, {1 ]
codesg ends
3 h. E+ Y0 Q$ J- ^end start- U1 [5 H; p+ c  T9 V
               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
4 l" E# M8 j# A& q: {9 I/ U( W4 p/ D( z% l( W0 |& z

3 o6 D6 O' I* ~% D7 S$ p/ n9 z7 s
debug xxx.exe (xxx是你的文件名) 回车* _7 [" h3 p8 H) z8 _$ b
- b$ X4 @( E; N7 v# s
-u  (查看程序的汇编指令) 回车
6 H3 N4 t7 f  d3 [
0 J3 B4 G  u6 amov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)
: a9 l8 s- c. vmov ds, ax* g# i& \" \5 x: j. `
mov bx, 0
9 r( |- O# H. _! X(下面的指令,略)  X9 Y7 F) k1 p: z/ A
# W# h1 Z( K+ L- j' d8 P8 E6 N
-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】" D! y" q$ I  O( s6 ^
# x0 y3 P* P* n- B& ?
-g (执行程序) 回车,就可以看到【program terminated normally】
& T# A5 Y& Q. P  V1 l; e. C9 _0 @
  q  ^: C  V/ C1 g+ |* U( ?然后,再次0 W- t% M7 `5 N5 P1 ~2 H  d$ j. E

, g7 W7 \1 o( W2 [5 o7 H. G+ M-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】
5 n& P1 L4 |4 N2 |) u  H! ^4 @
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后& ]$ K: I8 I: j$ ]( E1 e
-d  ds+10h:0
' P4 s; Z3 T: R* V看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2025-5-21 12:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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