鱼C论坛

 找回密码
 立即注册
查看: 2695|回复: 14

根据第9章的材料编程

[复制链接]
发表于 2014-1-29 22:12:20 | 显示全部楼层 |阅读模式
2鱼币
第九章根据材料编程的实验,小甲鱼在课后题给的代码编译连接成功,但是运行起来一闪而过,没有结果啊。我又根据这个编了个更简单的程序来测试,代码如图: 360软件小助手截图20140129212520.jpg                       结果这个也是可以正确的编译和链接,但是运行也是一闪而过,我用debug单步调试,最后发现显存的B800:720单元的内容一直是变化的,程序运行后内存单元B800:720的内容如图: 360软件小助手截图20140129212046.jpg 所以得不到预期的实验结果。这到底是怎么回事???  怎么都想不明白,我到底哪儿理解错了?? 希望这个问题能引起小甲鱼老师的注意。 并来解答,万分感谢~



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-30 00:20:23 | 显示全部楼层
显存是在不断被刷新的,你写的程序运行后,显存被写入指定字符,并显示出来了。
但是显示的时间很短,也就是你所说的一闪而过。

最简单方法,加个死循环,让其反复显示。
在 mov ax,4c00H 之前加入 jmp short start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-30 00:51:57 | 显示全部楼层
或者你直接运行编译好的 exe 文件,
打开CMD ,先输入 cls 回车清屏
然后在CMD里输入 *.exe    *是文件名。
再次回车,就应该能看到效果了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-30 00:53:43 | 显示全部楼层
debug 里调试,每 t 一次,都会刷一次屏
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-1-30 10:29:12 | 显示全部楼层

你说的三个方法我都试过了,没用,还是老样子。   并且我看小甲鱼的视频里面就会显示出来而且就一直在固定的中间显示,不会刷新。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-1-30 10:34:16 | 显示全部楼层
ryan0632 发表于 2014-1-30 09:53
彩色字符显示缓冲区这部分要在DOS环境下运行,下载个DOSBOX或者EMU8086

我看小甲鱼老师的视频的时候就是在cmd.exe中显示的呀,而且我这个程序单步调试的时候到了循环的时候在debug中用P命令执行完之后就会在预期的位置显示出绿色的字符串elcome,但是再继续的话这个字符不断上移,最后消失。  这怎么回事啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-1-30 16:25:50 | 显示全部楼层
呼唤小甲鱼老师来解决这个棘手的问题!!!! 让我好好过个年
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-30 17:36:37 | 显示全部楼层
zhaopengfei 发表于 2014-1-30 10:29
你说的三个方法我都试过了,没用,还是老样子。   并且我看小甲鱼的视频里面就会显示出来而且就一直在固定 ...

最直接的方法 在程序退出之前加入 jmp short start
单核的CPU 请不要这样做,否则会死循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-1-30 17:49:07 | 显示全部楼层
LinuxDeepin 发表于 2014-1-30 17:36
最直接的方法 在程序退出之前加入 jmp short start
单核的CPU 请不要这样做,否则会死循环

就是说这样子不行啊, 立即陷入死循环。 而且我的CPU是双核的,你说的几个方法都没用。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-30 19:35:27 | 显示全部楼层
zhaopengfei 发表于 2014-1-30 17:49
就是说这样子不行啊, 立即陷入死循环。 而且我的CPU是双核的,你说的几个方法都没用。

你是什么系统? XP win7 win8 ?
建议用虚拟机安装XP来测试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-30 19:37:42 | 显示全部楼层
编写同样的程序,没问题呀! 捕获2.PNG


代码如下:
捕获.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-1-31 12:50:06 | 显示全部楼层
LinuxDeepin 发表于 2014-1-30 19:35
你是什么系统? XP win7 win8 ?
建议用虚拟机安装XP来测试

我是win7的ghost旗舰版系统,除了这个实验,其他的实验都可以正常运行。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-1-31 12:59:02 | 显示全部楼层
LinuxDeepin 发表于 2014-1-30 19:37
编写同样的程序,没问题呀!

不是吧,我的代码就是这个样子的啊,完全一致,可是就是运行得不到上边的结果啊,郁闷死我了,到底是哪儿出问题了???:cry:cry
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-31 16:51:57 | 显示全部楼层
zhaopengfei 发表于 2014-1-31 12:59
不是吧,我的代码就是这个样子的啊,完全一致,可是就是运行得不到上边的结果啊,郁闷死我了,到底是哪儿 ...

安装VMware 虚拟机吧,在虚拟机里安装XP ,这样很方便的,对于初学者来说
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-2-2 20:21:39 | 显示全部楼层
我只是路过看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-6-15 11:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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