鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
7 ]1 e- |2 B- N; m7 M% Ndatasg segment
8 N, C* ]' W7 ?( c, W        db '1.ibm   '( r8 s' X# C/ t, D& _% R3 O+ m
        db '2.dec   '
4 a8 y* ~) T2 v. V  t/ D, N+ u        db '3.dos   '0 V5 s4 A1 U; W) B* t* g1 z* O, X) |8 L
datasg ends6 z9 y. L- @5 S8 \% V6 I& e' T3 J/ d0 T
9 Z* T# u6 Y/ T+ |
codesg segment
* w8 h9 ^/ r2 y9 I( {! m2 }start:        mov ax,datasg
7 N; p* d4 }) {4 q0 R, |                mov ds,ax- e& \) ]/ h8 h( F( u
                mov bx,08 S6 |# l4 D6 }9 v/ i% K
               
" \/ L7 _6 J" K3 ^8 w% }0 R' _' x                mov cx,3
# h+ y7 z! R9 D% P, y& ]- x        s:        mov al,[bx+2]
; z! h8 k9 g8 w% `9 S7 s                and al,11011111b
$ M6 I  s& d* U7 x6 y7 N                mov [bx+2],al. \, v. d/ i( w3 o
                add bx,16/ w( }0 c4 M; ~/ F  ~9 o2 G: S
                loop s
! \6 m) n$ {' C5 U$ k" N: k               
1 _+ h3 E4 i3 x& R5 w2 _7 [                mov ax,4c00h" H# |9 t1 E( X5 E
                int 21h
: O, l( T: K2 `" bcodesg ends
) u- r& C7 ~3 v1 d- h5 jend start; O( @9 J5 p  l! b9 e$ @
               
想知道小甲鱼最近在做啥?请访问 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....; {+ c% Z0 a; [7 ]
" q7 X& Y$ l# }0 v; j. _  A
1 H/ T( P; c0 _2 {
* }4 b2 M1 o& F! y
debug xxx.exe (xxx是你的文件名) 回车
: ]# R, F2 b3 j2 n% k  n) H9 f! c7 }, I/ \: c
-u  (查看程序的汇编指令) 回车
9 |" Z" q' Z9 m! \3 i4 @. |! w) c; O. X+ ~7 r# F4 D
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)
. T' `- N, g% dmov ds, ax
) W5 ~! |1 C' E  F! c& Fmov bx, 0
6 S4 G4 ~7 G  H: O* d: G# R" ](下面的指令,略)& _  \3 b, B) C  Q
) y8 E/ ^7 q9 g  o* A$ U. A: i9 {
-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】) J% T4 Y8 E* w" l

* n7 f0 s3 f; o8 P  Q-g (执行程序) 回车,就可以看到【program terminated normally】# r3 Y. E, r# Y# J0 B
3 |) L& G# Z: s# f1 k
然后,再次, q9 u5 s! O1 M6 O! x  m3 M* j

+ R, Y! ~: Q6 I1 [-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】5 a, l" w7 x# K6 r4 b5 I# C
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后
5 Z5 e6 F: n" {1 O9 O; W, d, n8 n-d  ds+10h:0  P; Q$ F' r; @" B" ^" U2 b
看要看的字母的数字 如果大于40小于61就是大写字母。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com

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

GMT+8, 2025-4-5 22:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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