鱼C论坛

 找回密码
 立即注册
查看: 2753|回复: 5

关于第九章的实验九的问题~~极度迷茫

[复制链接]
发表于 2011-12-22 01:01:58 | 显示全部楼层 |阅读模式

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

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

x
实验九,我无法改写0f872h代码段里面的内容,所以达不到实验要求的效果~~
这个实验,我是先尝试自己做,仅显示第一行的效果,代码编译成功了,运行了下,效果没出来
DEBUG了下,发现mov es:[si],al 不能改写es:[si]的内容(es指向0f872h,si为0)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-12-22 08:26:52 | 显示全部楼层
不理解你用地址0f872要干嘛?

要实现第一行的内容,我写个代码给你,你看看:
assume cs:qq
qq segment
mov ax,0b800h
mov ds,ax
mov bx,41h
mov cx,6
mov si,0
s:
mov ax,bx
mov [si],ax
add si,2
inc bx
loop s
mov bh,2
mov si,1
mov cx,6
s1:
mov byte ptr[si],bh
add si,2
loop s1
mov ax,4c00h
int 21h
qq ends
end
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-12-23 17:17:54 | 显示全部楼层

谢谢您的回复帮助,但是我还是不明白~请您帮忙看下我的代码,有什么问题么
assume cs:codesg
;先把要输出的数据放进去
data segment
        db 'welcome to masm!'
data ends



codesg segment
start:mov ax,0B800h
      mov es,ax

      mov ax,data
          mov ds,ax
          
      mov al,2 ;存放颜色属性
          mov cx,16  ;十六个字节,循环16次
          mov bx,0  
          mov si,0
          
        s:
          mov ah,ds:[bx]
          mov es:[si],ah
          mov es:[si+1],al
          
          add si,2
          add bx,1
          loop s
          
          mov ax,4c00h
          int 21h
          
codesg ends
end start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-12-23 21:26:33 | 显示全部楼层
本帖最后由 ytrfamli 于 2011-12-23 22:14 编辑

代码是可行的,奇怪的就是要让它显示出来要依序
进入debug(不需要指定exe)
退出debug(q指令),
正常执行(输入档名,回车)
才会正常显示,
不知道是否是显示内存预设不是显示第0页或是其他地方...
(实验说明里面提到什麽B8000~BFFFF那里)

无论如何,你的代码没有问题,继续往下学习吧~

*:更正,预设是显示第0页没错,互联网查到了一个资料,
具体的机制怎麽运作的我也不懂,
就是如果你在程序中向显存写入并且马上退出,会看不到结果,
可以在退出之前(mov ax,4c00h前面)加上
xor ah,ah
int 16h
这是一个让程序停下,读取一个键盘再继续的指令,
这时不需要我提到的先进入debug再退出就能正确显示了.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-12-24 03:47:42 | 显示全部楼层
ytrfamli 发表于 2011-12-23 21:26
代码是可行的,奇怪的就是要让它显示出来要依序
进入debug(不需要指定exe)
退出debug(q指令),

太感谢给位前辈的指点了,受益匪浅!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-12-24 03:47:56 | 显示全部楼层
ytrfamli 发表于 2011-12-23 21:26
代码是可行的,奇怪的就是要让它显示出来要依序
进入debug(不需要指定exe)
退出debug(q指令),

太感谢给位前辈的指点了,受益匪浅!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-22 01:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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