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 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 4
cmd吧小吧主 DCB-FSG队员 samkt
友情顶贴...恢复贴吧..鄙视爆吧
2010年08月28日 15点08分
7