. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->CALL和RET指令
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  帮我看下我的显存子程序,我的dh设置为和行数不匹配  [待解决] 回复[ 5次 ]   点击[ 353次 ]  
aimy
[帖 主]   [ 发表时间:2008-11-28 15:34 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:0
注册日期:2008-10-30 16:26
show_str:push ax
         push bx
         push cx
         push dx
         push si
         push di

         mov al,0a0h
         mov ah,0
         mul dh
         mov bx,ax
         mov al,2
         mov ah,0
         mul dl
         add bx,ax

         mov ax,0b800h
         mov es,ax
          
          mov ah,2
          mov di,0

show_str1:mov cl,[si]
         mov ch,0 
         jcxz ok2
          mov al,[si]
          mov es:[bx+di],ax
          add di,2
          inc si
          loop show_str1
        
     ok2:pop di
         pop si
         pop dx
         pop cx
         pop bx
         pop ax
         ret
mess
[第1楼]   [ 回复时间:2008-11-28 15:45 ]   [引用]   [回复]   [ top ] 
荣誉值:337
信誉值:0
注册日期:2008-01-01 17:48
帮我看下我的显存子程序,我的dh设置为和行数不匹配  
---------------
先确定自己的思路,没问题后用debug调试。

行 一行160个字符吧
列 80列,显示一个字符需要一个字的内存空间(看看试验九)
aimy
[第2楼]   [ 回复时间:2008-11-28 19:23 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:0
注册日期:2008-10-30 16:26
电脑从新启动下就好了,估计是调式多了,显存被我搞坏了,貌似DEBUG执行后那个-G 0BCF:XXX后当前的状态处不可以显示......
aimy
[第3楼]   [ 回复时间:2008-11-28 19:24 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:0
注册日期:2008-10-30 16:26
也就是不可以跟改当前的-G?
请问为什么啊
yanjiajia
[第4楼]   [ 回复时间:2008-12-11 12:29 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-11-17 21:34
dh与dl在乘之前要减一
行数是从0——24
第八行 代表里面的7 
同理dl也是

show_str:mov   ch,0

          mov ax,0b800h 
        mov es,ax 
      s1: mov cl,ds:[si]  
          jcxz ok
          push dx
          dec dh
          mov ax,0    
          mov al,0a0h 
          mul dh 
          mov bx,ax
          dec dl
          mov ax,0
          mov al,2 
          mul dl 
          mov di,ax 
          
          mov al,ds:[si] 
          mov ah,2
          mov es:[bx+di],ax
          pop dx
          inc dl
          inc si 
          jmp  s1

        ok: ret
yanjiajia
[第5楼]   [ 回复时间:2008-12-11 12:32 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-11-17 21:34
执行程序 如果直接执行exe文件时,输入命令后,显示的东西会往上移,即在第七行显示,这是正常现象
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved