asd82937121 发表于 2011-5-26 22:33:35

请问一下

本帖最后由 loop 于 2011-5-27 19:56 编辑

我实验9做完的程序 当时调试是没问题的, 也就是说可以在屏幕上输出那一串字符,但是最近重装了系统 导致现在那个程序一闪而过了这是怎么一回事??
实验10 第一个程序也做完了可以在屏幕的要求的位置显示字符 不过程序上面总带着一行错误提示,。。。
"write fault error writing device PRN"
不明白是为什么谁能帮帮我

loop 发表于 2011-5-27 00:34:44

贴下源码和报错图片

asd82937121 发表于 2011-5-27 07:08:12

assume cs:code,ds:data
data segment
db 'Welcome to masm!',0
data ends


code segment
start: mov dh,8
           mov dl,3
           mov cl,2
           mov ax,data
           mov ds,ax
           mov si,0
           callshow_str
          
           mov ax,4c00h
           int 21h
show_str:        mov ax,0b800h
                        mov es,ax
                        mov al,0a0h
                        mul dh
                        mov dh,0
                        add dx,dx
                        add ax,dx
                        mov bx,ax
                        push cx
                        mov cx,20h
                s:        push cx
                        movcl,
                        jcxz back
                        add sp,2
                        mov al,
                        mov es:,al
                        inc bx
                        pop cx
                        mov es:,cl
                        inc si
                        inc bx
                        sub sp,4
                        pop cx
                        add sp,2
                        loop s
        back:        ret
code ends
end start

实验十的源码

asd82937121 发表于 2011-5-27 07:11:39

报错的就是那一句话我也经写出来了

weixianlang 发表于 2011-5-27 08:33:37

代码本身就有问题, 先把代码弄好先,再看看还出错否?   

asd82937121 发表于 2011-5-27 08:36:19

我说了当前的字符已经可以显示出来了只不过在显示的同时还有个报错提示我不明白这是为什么
我知道代码有问题 请指出问题所在

winddyj 发表于 2011-5-27 11:01:11

本帖最后由 winddyj 于 2011-5-27 11:04 编辑

在我电脑上,程序也无显示,也无法返回
程序思路没有错,但堆栈没平衡,以致于程序调用子程序后无法返回
修改了下,无问题了
      sub sp,4
      pop cx
      loop s
back: add sp,4
      ret

asd82937121 发表于 2011-5-27 11:48:18

winddyj 发表于 2011-5-27 11:01 static/image/common/back.gif
在我电脑上,程序也无显示,也无法返回
程序思路没有错,但堆栈没平衡,以致于程序调用子程序后无法返回
修改 ...

谢谢楼上 不过我发觉我是搞复杂了 其实压栈一次就足够了SP乱跳给我自己都跳乱了
程序已经搞定了
页: [1]
查看完整版本: 请问一下