鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg" @! Y: r5 M, w. p
datasg segment% v2 f) M4 p# d, }
        db '1.ibm   '
9 f8 W4 z3 b( W7 T        db '2.dec   '
& H- }; P5 [- [* N1 Z        db '3.dos   '5 }1 W  ~% g- f1 h$ s. |, g
datasg ends
" N3 @! b3 I  _! h; @) c9 M) Q# S& B
  _2 j: j5 r/ ]9 xcodesg segment
- U2 f; p& q1 b% P& C5 Istart:        mov ax,datasg' a9 @4 g. j1 O/ a. f6 w0 ^
                mov ds,ax
5 I5 C3 ~2 r" G1 A: N5 {# {                mov bx,0. \. a7 `" W; m# m6 n
               
  i9 @$ I( T6 }5 J! q/ @5 ?8 f: y( i                mov cx,31 M; H, A3 R! r& e9 ?# U
        s:        mov al,[bx+2]4 S- r! C. E8 z, M) r, o
                and al,11011111b
$ i2 G! d# y% I; j! c+ n1 o                mov [bx+2],al7 z( s4 i" L3 u3 Q2 q
                add bx,166 o* \# M! |- s9 @
                loop s
5 F5 D5 G5 l: s4 D6 ^3 `                . k: x: r9 t5 M& O
                mov ax,4c00h
. Q1 I" b5 e- M$ R% W                int 21h
. c( F7 i5 r( D6 h3 Ecodesg ends# H) _4 h' P" O+ T4 |
end start- o" v0 a7 l( {- T- G5 J9 U0 d
               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....+ i/ V% {1 _2 o% [
+ Z+ n& O+ _' h! C' b& ?+ x

: Z% E% e" `& O" {0 h# ~/ I3 M: `; t; R3 s3 z  x% S- L% {
debug xxx.exe (xxx是你的文件名) 回车
0 l7 L9 E2 `# Z: E! m+ b7 s( A/ B' F6 E1 ^3 @; b
-u  (查看程序的汇编指令) 回车% r& {- N9 n: R. ]! }. }
0 o$ T/ k8 s7 m: X: i6 ?
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234): K( W3 y) X/ C$ i( k
mov ds, ax0 K4 S! @: C+ w2 d9 ]# _
mov bx, 0) q8 y0 s0 H$ T* E1 m
(下面的指令,略)
+ x: f& k9 |; q; A+ v/ U3 M
& M2 E3 m- c0 I) T3 b$ P/ N" r" q% w-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】- L/ q5 m5 P$ _5 v7 X; n) i! ~
3 @3 h. s( r$ A5 T9 W
-g (执行程序) 回车,就可以看到【program terminated normally】
! s( E' r* i# k3 p
0 |, P  N- |8 }然后,再次4 j$ }! w& X) w  d) O4 e2 A
# W9 {  b# }7 p  ~6 P/ S
-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】/ A8 T( D  d/ j4 x
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后
# M' ^) S: G. o7 g5 ~' G9 S$ g. K-d  ds+10h:0* P5 ~. d. `# d8 a+ K$ P' F+ r
看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2026-3-7 16:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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