鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
, F, J( x  p* U0 `) Vdatasg segment
2 \' P: @5 P- z0 u1 |/ c$ v! M        db '1.ibm   '. L4 b! C! Z# ^6 w1 b
        db '2.dec   '$ D( H2 m! I- O
        db '3.dos   '4 p; `+ _, i' `* t6 l! Z
datasg ends
8 s: F/ ~/ C' W1 E
+ e; O$ n8 d# Z3 E1 vcodesg segment
2 L! G- N. Y% j' U% C" mstart:        mov ax,datasg7 ~$ L+ s8 ^' t& Y/ z9 Y. S+ q
                mov ds,ax
) _2 F; r/ e& K                mov bx,00 ?- i" v5 Y6 Q. v* T
               
/ m9 e8 j! d4 I' p8 E% D% E9 o# F                mov cx,3
) g7 X" N3 j- n; I        s:        mov al,[bx+2]
% S; h8 X9 k: S4 e' E                and al,11011111b
, N( y3 x/ M3 _2 \" [                mov [bx+2],al
5 m6 p3 {! d& J" Y                add bx,16- @' O! N2 X2 Y7 _- \
                loop s# v* O$ V7 p2 E( O$ [- `% u
                ! I# X3 b, h9 X- G8 X( ?
                mov ax,4c00h
: a3 |; I% {- L                int 21h
' Q6 O' R$ `2 I) H" c! Icodesg ends9 ?* E$ w: p8 E# W9 J
end start
7 U4 C$ }4 |" `% ?4 z; A+ I               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
1 U3 y; _5 g- r0 O8 T# B  z% K# e  j; q7 z3 r& D

* p, ^; K8 N, u5 s; ?6 v( Z% w
debug xxx.exe (xxx是你的文件名) 回车
  [5 e1 l, @) |4 f3 t7 u4 ]4 K, U2 W
0 z. \2 ]7 W: K; V% W, w: G-u  (查看程序的汇编指令) 回车$ v, q9 U8 n3 N* Y8 c* Y% p) Z
% A( {% F# r3 A; q7 S
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)0 `7 [8 J! L4 r3 Z( @4 @
mov ds, ax$ F- D1 u7 }  U+ i' _
mov bx, 0$ v% u! k' Z9 M, l4 ^" }# }' o
(下面的指令,略)  }* [3 y& Z* u$ N# F' X

4 x' h: Y# d+ j7 W' g-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】, |1 c: p. E( E: v1 t2 V7 t

1 _$ E" v! ?4 D# G5 f" a, B3 e-g (执行程序) 回车,就可以看到【program terminated normally】
, {& m# m8 i/ e' j: j$ a, `7 i, D
* x! [/ \" b& N- F然后,再次4 W0 w9 u) e* s" i! ?
8 `) S" \  O9 O$ A/ Q0 T! y- q3 [
-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】8 c+ A1 w8 E" H( j  Y; C& n, F3 z+ d
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后
- |) c9 L" {% K5 H-d  ds+10h:04 w) }  f- ]' H) U/ t+ X
看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-6-14 14:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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