回 帖 发 新 帖 刷新版面

主题:请教!!

为什么我用MASM作出来的EXE文件运行后看不到结果呀
总是一闪就过去了(就是出现了一个黑框就没了)
下面是我的程序调试没问题的
stack segment stack
 db 200 dup (0)
stack ends
data segment
dat db '0'
buf db 0dh,0ah,'please input number(0...6):$'
data ends
code segment
assume cs:code,ds:data,ss:stack
start: mov ax,data
mov ds,ax
mov ah,0
mov al,3
int 10h
mov si,bx
mov ah,2
mov dx,081eh
int 10h
mov ah,9
mov al,'*'
mov bl,84h
mov cx,10
int 10h
lop: inc dh
mov al,'*'
mov cx,1
mov bl,84h
call play
inc dl
mov al,dat
mov cx,8
call play
mov al,'*'
mov dl,39
mov cx,1
mov bl,84h
call play
inc dat
inc dat
mov dl,30
cmp dat,'8'
jbe lop
inc dh
mov al,'*'
mov cx,10
mov bl,84h
call play
mov ah,9
lea dx,buf
int 21h
sub al,30
mov ah,6
mov bh,7
mov cx,091fh
mov dx,0d26h
int 21h
mov ah,4ch
int 21h
play proc
push ax
push bx
mov bx,si
mov ah,2
int 10h
pop bx
pop ax
mov ah,10
int 10h
ret
play endp
code ends
end start

回复列表 (共9个回复)

沙发


为了看结果,只能在命令行下 运行,
因为程序结束后,直接关闭窗口

板凳

我在命令行下运行也没有显示结果呀!!
怎么办呀

3 楼

2楼的
我的这个程序旧能看见结果 在命令下!!
data   segment
  var db 11,22
  buf db 4 dup(?)
data ends

code segment
org 1000h
assume  

cs:code,ds:data
begin:  mov ax,data
        mov ds,ax
        mov bx,0
        mov di,2
        mov cl,10
again:  mov ah,0
        mov al,var[bx]
lop:    div cl
        add ah,30h
        mov buf[di],ah
        dec di
        cmp al,0
        je net1
        mov ah,0
        jmp lop
net1:   mov 

[buf+3],2ch
        mov di,0
net2:   mov dl,buf

[di]
        mov ah,2
        int 21h
        mov buf[di],0
        inc di
        cmp di,3
        jle net2
        inc bx
        cmp bx,10
        je  net3
        mov di,2
        jmp again
net3:   mov ah,4ch
        int 21h
code    ends
        end  begin

4 楼

可以把结果保存在一个文件中,运行时产生一个村有结果的 文件

5 楼

告诉我命令是什么!!!谢谢哦

6 楼

[quote]告诉我命令是什么!!!谢谢哦[/quote]

在命令行下运行程序,可以看一些星号和数字。
不知你为什么看不到,灵异事件?

7 楼

是呀
我就是看不到呀

8 楼

fatal error A1000: cannot open file : unknow.asm
第一个程序我MASM的时候 出现了这个错呀!!

9 楼

要看到程序结果,像C中的system("pause");或getch();一样在最后加一个
mov ah,01h
int 21h
就好啦.

我来回复

您尚未登录,请登录后再回复。点此登录或注册