鱼C论坛

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

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

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

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

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

x
assume cs:codesg,ds:datasg
6 o# D6 \0 Z  {9 m  S2 ~datasg segment
0 u4 ^% q' L1 T# W' Q' e+ p6 p        db '1.ibm   ': |' f+ u6 i9 L. }" F
        db '2.dec   '* N) h0 j6 R! Q# [
        db '3.dos   '
. O7 f' o! @6 W- z/ _! Udatasg ends6 j* o, B* \2 V: L: b7 x% N( K, }1 p

' n3 R1 p! Z) H+ g3 S3 W) a( Rcodesg segment! g! A" V5 z) k: Q
start:        mov ax,datasg6 v: r4 p5 U: u5 A
                mov ds,ax
1 a; f" F" `! m& W# E                mov bx,0
! V: c+ @( K. R               
8 Q- R/ R, N& O4 M- ?                mov cx,3
: Z' X' n# K6 M1 q7 r# b        s:        mov al,[bx+2]
5 m$ W0 M3 V$ ]: ]# s: a+ I: ~                and al,11011111b
! j1 @0 p* h6 X' _+ C+ ]' c                mov [bx+2],al
9 }, J& [5 l# z3 c                add bx,16
( M6 F4 m; j' x* K( c# a1 [. Z                loop s
* t! o4 m: w" V* Z                ! y5 t% I7 e: J
                mov ax,4c00h
+ V6 r0 }( w/ z& {- y6 q                int 21h
0 a3 u6 M7 R) J, d- Ecodesg ends; Y/ d' |1 o' E3 U2 i
end start, m2 x; o2 y- f6 o
               
小甲鱼最新课程 -> 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 | 显示全部楼层
都过去这么多天了,不知道您解决了没有....& u& S8 E( Y" Y
, r, b3 U+ c+ f5 X- |6 @
+ |  @$ e7 e# B5 {1 ~- x* O

1 e2 Y8 A5 f$ k+ i# {8 I6 \5 [8 fdebug xxx.exe (xxx是你的文件名) 回车
8 U% a/ \2 Y2 ]# i
! U8 p9 s% H; c" s# p-u  (查看程序的汇编指令) 回车
+ P$ U) Q) B. g
9 M9 j  ^( {; dmov ax, xxxx (这里的XXXX原本是datasg, 现在变成了实际的datasg段的 段地址, 如: 1234)
8 C7 y0 M% Q$ q% k8 q7 Emov ds, ax
) u, i4 E  u9 }mov bx, 0
" A& ^# R7 T; i6 P% U(下面的指令,略)
3 l) }! G: |6 j" K1 F
/ Q  }( O$ {+ V0 P-d 1234:0  回车, 就可以看到【程序执行前的数据段的内容】9 G; |1 x- D0 F

+ X) Y, T8 _; o4 P-g (执行程序) 回车,就可以看到【program terminated normally】
7 a% y0 X' M7 e: x. l6 \. K, d2 q; L8 J* m8 M# c+ C4 x
然后,再次5 `4 J2 y1 P$ v. U  r- @/ e

6 G; D5 p  q6 Z- C-d 1234:0  回车, 就可以看到【程序执行后的数据段的内容】
  i2 E& F+ w2 I5 B
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-7-28 22:18:22 | 显示全部楼层
我觉得可以在执行程序后
% w) `0 M) L5 w0 y3 @4 v-d  ds+10h:0
7 V1 [! O' L& M看要看的字母的数字 如果大于40小于61就是大写字母。
小甲鱼最新课程 -> https://ilovefishc.com

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

GMT+8, 2025-11-19 14:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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