大家帮我看一下这个程序 为什么这样写不能运行
debug吧
全部回复
仅看楼主
level 1
-a
137C:0100 mov ah,09
137C:0102 db 'dsadsa$'
137C:0109 mov dx,102
137C:010C int 21h
137C:010E int 20h
137C:0110
-g
-a 0100     
08F1:0100 MOV AH,09    
08F1:0102 MOV DX,109   
   08F1:0105 INT 21H;    
08F1:0107 INT 20H;
    08F1:0109 db 'May I help you $'    
08F1:0115
-g
为什么第二个程序就可以运行 求高手解释

2010年08月24日 12点08分 1
level 4
第一段在没有单独定义数据的时候, 需要段超越,这样:mov ah,9db 'string$'cs:               ;因为数据定义在CS段里mov dx,102        ;伪码表示:dx=cs:[102]int 21第二段类似这样的情形, 在写代码的时候也常用到的。
2010年08月24日 12点08分 2
level 1
第一段可以这样写db 'string$'cs:吗
2010年08月24日 12点08分 3
level 4
很讨厌, 没有换行, 这样:Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
d:\MASM>debug
-a
1472:0100 mov ah,9
1472:0102 db 'hello$'
1472:0108 cs:
1472:0109 mov dx,102
1472:010C int 21
1472:010E
-g 10e
hello
AX=0924 BX=0000 CX=0000 DX=0102 SP=FFEC BP=0000 SI=0002 DI=0001
DS=1472 ES=1472 SS=1472 CS=1472 IP=010E NV UP EI PL ZR NA PE NC
1472:010E C501 LDS AX,[BX+DI] DS:0001=FF20
-
回复:3楼

2010年08月24日 12点08分 4
level 1
原来是这样啊 圣凡有别 你果然是高手 谢谢你[Love]
2010年08月24日 13点08分 5
level 4
[瀑布汗~]回复:5楼
2010年08月24日 13点08分 6
level 4
cmd吧小吧主 DCB-FSG队员 samkt
友情顶贴...恢复贴吧..鄙视爆吧
2010年08月28日 15点08分 7
1