鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
+ u; U# |6 A& ~datasg segment
( n0 N6 i( T6 K" V$ d        db '1.ibm   '* \4 g) y& V! ], ~
        db '2.dec   '
8 s* p; T) f" s0 {7 r        db '3.dos   ') J( S7 Y. a. N% p0 |  Z
datasg ends
2 g: |1 D) q0 e9 v8 V9 Y0 Q" n- @7 u1 M
codesg segment
1 `* c" G' L, _* E8 |start:        mov ax,datasg
$ l' z( X7 z$ ~; {- G  x" w/ e6 M                mov ds,ax
; S) i* P1 ^8 h0 I- X+ {                mov bx,0" x+ D7 ]0 X; |! F6 P7 B
                # U' t, a* t* v( Z6 U2 \% n
                mov cx,3" H& j: C6 m. \/ d$ |
        s:        mov al,[bx+2]
9 A4 q( S8 z# Q* S" H+ X4 b                and al,11011111b7 L2 k& y* X( I7 F3 }+ K" d  B: F- u
                mov [bx+2],al1 J; S2 ~: V6 X: V
                add bx,16( n. v" }& {+ j: Q
                loop s
' c. u/ k# @+ I+ a8 }4 E               
3 @% F8 A; I0 x  s# B3 H5 f% d3 c                mov ax,4c00h' o4 U: A" v8 Z7 h# i- T
                int 21h
6 Y1 Y/ i. @& X" ocodesg ends) C$ t9 f  l3 |& w! b
end start
* S$ V' D" }2 z  A               
想知道小甲鱼最近在做啥?请访问 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
9 T7 [6 K& ~% A6 N5 h" B/ \) k0 y5 a9 A3 d% |
8 C6 }* R# |$ d0 w" P# `. A7 D( l

3 C( Z4 S+ m7 n, M9 @! j' o  N0 B* c7 Adebug xxx.exe (xxx是你的文件名) 回车" e/ J6 D9 P; E: V* m  K' S! q( Z

- B: m/ F  N) x! i, u6 N1 i* u: y-u  (查看程序的汇编指令) 回车
2 i; d6 h, i/ b# t# W4 l
/ S: f" z! G3 I. cmov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)0 w- u! h  t4 r9 d! W/ f' w$ C1 n# E; o
mov ds, ax' L! \  p0 u  W6 L& K
mov bx, 0
! r- y( c2 g+ \/ q  F. K(下面的指令,略)
/ e9 a7 ^! X/ c' ^% o4 S# [% w. A# a, I1 C
-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】# y: k' x" W7 ^/ ]  v
. X. V6 M  ?: G
-g (执行程序) 回车,就可以看到【program terminated normally】
9 s- M0 _% G; ^, I4 O# R- Q. ?4 x( |/ |, x8 c
然后,再次- `4 {: Y* g4 C( i  B. {# @
; j$ v  S& E5 f/ j2 R* k
-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】$ y" f" w7 e1 f; G
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后/ }" E4 [0 d- y  _( x
-d  ds+10h:0( I  ^4 P% ~6 |; b
看要看的字母的数字 如果大于40小于61就是大写字母。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

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

GMT+8, 2024-11-22 20:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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