鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
$ W. X0 H, E! i1 odatasg segment
6 D& J1 b9 B6 g3 m$ u- o        db '1.ibm   '- w/ O+ W& V# S( u# |9 L
        db '2.dec   '
. o# _4 N& |0 k2 W5 `) R# o$ }        db '3.dos   '
/ M6 Z: w- _. w' Y/ p7 |datasg ends# Z6 j. E+ \$ Z
9 R* S  G# J9 y% T$ @8 ?" u1 w
codesg segment/ L, I& W) g" _) X* x$ `$ S: Z
start:        mov ax,datasg
6 V, R; H5 m$ j) W; i- g                mov ds,ax" a+ v& F% U4 c; o/ s$ @
                mov bx,0* F/ m! ]/ T. |
               
+ d3 @+ P* j2 d3 V% v* h                mov cx,3
& _; H2 o6 [# u  W$ r        s:        mov al,[bx+2]  e- l+ z+ _/ K3 X" ?8 G
                and al,11011111b
; }) r' `9 |- h* ?5 M! o                mov [bx+2],al2 R" a/ i& q' H
                add bx,16
( U9 l  j6 u0 Y. o& S- l( U                loop s
/ r' C' V. L9 I. R# ]! R8 ~                ' I4 k/ L  h4 l
                mov ax,4c00h
# ?/ W0 @" l8 s7 o! e                int 21h
) Y* H* ~; |4 J# Dcodesg ends
( t$ j5 t" s% j5 X- f6 s9 fend start
- ~6 i5 P3 x! {/ b  t               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
: g( x* c+ S" X3 R
$ r1 _% L! b/ ]" ^0 i9 N' g$ L1 b0 e6 ^* I% \6 G

  Y; {2 w7 s( F; p3 k% Z8 Rdebug xxx.exe (xxx是你的文件名) 回车" W" t- R1 O* P# O1 ~7 H+ w

# j  ?1 n$ V3 c2 P5 J6 p-u  (查看程序的汇编指令) 回车) N# K5 a0 G+ g4 @) D* A
$ x- d: }8 d& H5 L; S
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234): W' y9 Z6 g" c$ i" S
mov ds, ax% A* ^) |0 [. }1 M
mov bx, 0
" m2 g9 F7 [6 X(下面的指令,略). [1 I# R2 k- ^( Q) T

6 N) `8 ]# ^/ j6 g& x+ g! C9 C-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】
: a3 _+ H: h0 b0 `6 g4 K- }. ^! v/ k% Z& u
-g (执行程序) 回车,就可以看到【program terminated normally】0 Y3 l) p: t7 _
1 ~! M  O% L: N8 c9 H2 o- \) t
然后,再次0 q' {; s+ g6 s" ?" j) u
* u" J4 U! ^: B3 S9 {6 T
-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】
5 x9 h" x5 {% ~+ ~5 m  J; B4 t1 u1 a
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后) x0 H6 ^- q6 K; o( J; M
-d  ds+10h:0- D) w8 h! U! v# G# h
看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-7-25 03:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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