鱼C论坛

 找回密码
 立即注册
查看: 3618|回复: 7

请问一下

[复制链接]
发表于 2011-5-26 22:33:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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

我实验9做完的程序 当时调试是没问题的, 也就是说可以在屏幕上输出那一串字符,但是最近重装了系统 导致现在那个程序一闪而过了  这是怎么一回事??
实验10 第一个程序也做完了  可以在屏幕的要求的位置显示字符 不过程序上面总带着一行错误提示,。。。
"write fault error writing device PRN  "
不明白是为什么  谁能帮帮我
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-27 00:34:44 | 显示全部楼层
贴下源码和报错图片
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 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
           call  show_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
                        mov  cl,[si]
                        jcxz back
                        add sp,2
                        mov al,[si]
                        mov es:[bx],al
                        inc bx
                        pop cx
                        mov es:[bx],cl
                        inc si
                        inc bx
                        sub sp,4
                        pop cx
                        add sp,2
                        loop s
        back:        ret
code ends
end start

实验十的源码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-5-27 07:11:39 | 显示全部楼层
报错的就是那一句话  我也经写出来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-27 08:33:37 | 显示全部楼层
代码本身就有问题, 先把代码弄好先,再看看还出错否?     
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-5-27 08:36:19 | 显示全部楼层
我说了  当前的字符已经可以显示出来了  只不过在显示的同时还有个报错提示  我不明白这是为什么
我知道代码有问题 请指出问题所在  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-27 11:01:11 | 显示全部楼层
本帖最后由 winddyj 于 2011-5-27 11:04 编辑

在我电脑上,程序也无显示,也无法返回
程序思路没有错,但堆栈没平衡,以致于程序调用子程序后无法返回
修改了下,无问题了

  1.       sub sp,4
  2.       pop cx
  3.       loop s
  4. back: add sp,4
  5.       ret
复制代码
1.JPG

评分

参与人数 1荣誉 +2 收起 理由
loop + 2 感谢解答,鱼C有你更精彩~

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-5-27 11:48:18 | 显示全部楼层

谢谢楼上 不过我发觉我是搞复杂了 其实压栈一次就足够了  SP乱跳给我自己都跳乱了  
程序已经搞定了  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-17 19:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表