汇编网首页登录博客注册
china20090的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  

[2009-07-17 01:07] 字节变量VARB

图片载入中
-a
0AFC:0100 add bl,varb
^ Error
0AFC:0100
-r
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=0AFC ES=0AFC SS=0AFC CS=0AFC IP=0100 NV UP EI PL NZ NA PO NC
0AFC:0100 3E DS:
0AFC:0101 B798 MOV BH,98
-d
0AFC:0100 3E B7 98 FF 75 0C BF E1-94 BD B7 98 E8 11 01 E8 >...u...........
0AFC:0110 74 E4 32 C0 86 06 16 99-0A C0 75 03 34 00 EB 0A t.2.......u.4...
0AFC:0120 36 B9 98 BF 76 97 B8 00-29 CD 21 80 3C 00 74 06 6...v...).!.<.t.
0AFC:0130 BA 92 8A E9 53 FF A1 BC-98 80 FC 3A 74 02 B0 40 ....S......:t..@
0AFC:0140 8A 0E D8 99 0C 20 2C 60-A2 76 97 A0 BB 98 8A 26 ..... ,`.v.....&
0AFC:0150 1E 99 25 02 02 0A C0 74-13 3A C4 75 0F 80 3E D9 ..%....t.:.u..>.
0AFC:0160 99 00 74 08 FE 06 17 99-32 C0 EB 06 34 02 22 C4 ..t.....2...4.".
0AFC:0170 D0 E8 0A 06 D9 99 A2 C7-96 D0 E0 D0 E0 A2 D2 99 ................
-
-u 100
0AFC:0100 3E DS:
0AFC:0101 B798 MOV BH,98
0AFC:0103 FF750C PUSH [DI+0C]
0AFC:0106 BFE194 MOV DI,94E1
0AFC:0109 BDB798 MOV BP,98B7
0AFC:010C E81101 CALL 0220
0AFC:010F E874E4 CALL E586
0AFC:0112 32C0 XOR AL,AL
0AFC:0114 86061699 XCHG AL,[9916]
0AFC:0118 0AC0 OR AL,AL
0AFC:011A 7503 JNZ 011F
0AFC:011C 3400 XOR AL,00
0AFC:011E EB0A JMP 012A
-
出现错误,VARB需要事先怎么定义?
-a
0AFC:0100 mov varb,9
^ Error
0AFC:0100 varw dw 1234
^ Error
0AFC:0100
VARB或W都什么时候用?
0AFC:0100 varb db 6
^ Error
0AFC:0100
-varw dw 1234
^ Error
-
VARB是不在程序里定义?
sseg segment stack
dw 256 dup(0)
sseg ends
dseg segment
varb db"hello",0dh,0ah,'$'
dseg ends
cceg segment
assume cs:cseg,ds:dseg,ss:sseg
start: mov ax,dseg
mov ds,ax
mov dx,offset varb
mov ah,9
int 21h
mov ah,4ch
int 21h
cseg ends
end start
编译是怎么在assume cs:cseg,ds:dseg,ss:sseg行出错?VARB倒是过去了,不知道什么意思?
0AFC:0100 mov varb,9


怎么DEBUG不能执行

........ 

varb定义了么

用DEBUG不管有没有定义,一定不能执行的... 

就是不会定义

 why?

只能写偏移?

是 

圣途这么厉害

什么是只能写偏移

写地址,一般VARB在程序中定义,反汇编后可以看到被解释为一个实际地址 

不会以变量形式出现的 

偏移地址,DEBUG写的时候先给出段地址,比如就写个DS,或CS,ES, 

然后写mov 偏移,9 

赞……
我确实没在debug里定义过变量 

DEBUG里只能按反汇编后那种格式写指令
评论次数(1)  |  浏览次数(277)  |  类型(汇编命令练习) |  收藏此文  | 

[  游客   发表于  2009-07-17 08:11  ]

dseg segment 
varb db"hello",0dh,0ah,'$' 
dseg ends 
==================
这里varb是标号 ,db才是字节定义的伪指令,db后面与数据间应该有个空格。

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码