鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
/ v& v3 L* W/ _6 E8 h+ N) Idatasg segment
' Z5 L' O( P8 \* |2 }5 G" I        db '1.ibm   '; O7 Q3 c& F3 o7 q
        db '2.dec   '
, ?5 A3 x" F8 q/ |        db '3.dos   '
* ]$ G  B7 P9 {$ _" idatasg ends# n' `! a* c8 W3 p

% o% T/ m+ P2 R- }codesg segment( w* p7 w- a+ R/ d# V# H
start:        mov ax,datasg
7 J2 V2 S1 l+ G; _, _                mov ds,ax
9 G+ h& t9 J, g) L: B                mov bx,0
, i6 m9 H0 g7 Y1 Y' p                  Z4 d" t# v& b  P% ^
                mov cx,3% j1 p0 r6 @. {
        s:        mov al,[bx+2]; x" R, H$ h6 o; o3 ]1 ]: w
                and al,11011111b$ Q' y% W+ P+ A. P- e' H4 e- C* Q
                mov [bx+2],al( q0 V; {$ T0 a
                add bx,16; K0 o6 f# o/ H, U, `, Q: D+ ~
                loop s1 `0 @9 ^$ y4 l- H
                ' ?# S8 _) [0 p7 y
                mov ax,4c00h$ A: @# \. \" K* d
                int 21h
; e8 B5 O& P" v! O- _  z+ n& ]codesg ends
/ |" ^8 P. K% iend start
1 Q# O, b4 a. E* \- 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
( q1 T) E" w# K; m3 w0 o9 p. h$ N/ @' {
- @' u2 g. c$ ]# Q7 _6 J9 q
) ^1 `, E* Z& n2 C
debug xxx.exe (xxx是你的文件名) 回车! R$ Y( N& S" X0 }

% N9 R2 [6 u2 ^% H- a* K-u  (查看程序的汇编指令) 回车0 F1 E* A$ n5 y' u# |5 g: P. J
6 A% V+ F+ R% X& a0 S
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)
& Z* t3 F' v( z& w: kmov ds, ax. A# t" E; K# o# s
mov bx, 0! q3 u6 z+ b. Y& h; K9 F
(下面的指令,略). t, W9 t5 W2 d: N

7 r6 u3 K1 J/ N$ u" J-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】/ c) Y- }: @$ |

/ B. e$ r/ i, ]4 o4 K9 h( [-g (执行程序) 回车,就可以看到【program terminated normally】+ i" f2 T% e# w% m; q

* m3 L6 T- l3 q, {7 \, `0 h, R然后,再次; p+ Q  C/ \: ]0 v' Z. u0 W

' k! ~! Y& d7 P  a" q' |-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】1 u  J4 S. p3 R. O' t
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后5 ]5 O! O7 W7 V* _6 q5 }0 h* S
-d  ds+10h:0
6 U4 d' \$ s6 U$ W. p; C1 M9 k看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

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

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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