鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
8 T6 J, n3 h, _5 t% J( Z" zdatasg segment4 I5 L* _. n5 Q3 Y
        db '1.ibm   '9 j6 }; G! w  B- ]
        db '2.dec   '
4 B8 B6 ]7 d# a" {  K  A- k        db '3.dos   '( a! f! ^4 t, R, Q3 ?* B
datasg ends; J; A0 y7 j/ D+ J5 Z% D/ v2 C1 Z

: a. X6 P& m- M  [: \; y4 G, ecodesg segment) B( x3 f* g9 ]9 `$ P
start:        mov ax,datasg) s" J, `( E3 @; x3 r; o
                mov ds,ax
$ @9 T5 p  b) u  `+ N- [4 k                mov bx,0
0 h/ Y9 ~  T3 G7 @1 x               
$ y8 o: }* l$ d                mov cx,3. g  S6 k& m% p
        s:        mov al,[bx+2]
6 X& C, }3 a( B; x1 S5 k                and al,11011111b
; B, \8 A' k7 D; C                mov [bx+2],al; m5 D8 Q5 U; ]  h/ I3 E8 O+ |
                add bx,16. V! b. L, i. |4 y$ n
                loop s
$ Q5 u& w8 c4 I& i/ V2 R8 W                1 u& P9 g9 H/ l1 E1 e1 x
                mov ax,4c00h& n8 D' d1 o" W- F5 D5 T
                int 21h
" p! n" V  N; _: m1 Bcodesg ends
# I% P1 L' |; g" O( n( ^" Send start$ M1 ^0 |5 _4 w! z% R  ~8 Q
               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....
9 ]  C$ Z( {, B0 ~( d0 N1 [) q/ B& R$ O/ |

$ {2 Y# r" t% k3 Q6 G6 u! u& L9 d6 h$ c# A4 O5 \: a
debug xxx.exe (xxx是你的文件名) 回车/ s3 j/ F9 l+ S( g2 m0 v

3 f$ [0 s( F% A7 b! o2 u' _-u  (查看程序的汇编指令) 回车+ f% ~# g( M0 ?2 D6 M* H
$ @# B, V' D/ y9 V8 k* b2 s' ?6 @
mov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)& v6 S0 D) a/ `& N  N" B! F
mov ds, ax( ]! l. ~% e* |- u
mov bx, 0, Q: g  E. [2 Z( B4 }6 j+ `3 k
(下面的指令,略)
2 X! T; Q! e# K$ o  B* `% C; {3 H) j: J" {3 ^
-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】
/ N5 m% U4 \8 z1 Y4 d/ R; r- |4 ]( T; F/ l
-g (执行程序) 回车,就可以看到【program terminated normally】; @; P: |" q- U2 [& L
8 X0 T! q2 U7 k
然后,再次
! H( c! O( K$ Y( [* C( u; H6 k% B& T& M4 k) c! H# R( n
-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】8 `6 I6 T3 _2 T' V2 w" p7 `
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后
5 R- m; h5 v! y4 r+ Q: m( k2 }2 l-d  ds+10h:0# _- h9 i7 a; j8 Y4 S
看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2025-7-5 23:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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