. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->转移指令的原理
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  改·最后一题  [已解决] 回复[ 3次 ]   点击[ 213次 ]  
r251314w
[帖 主]   [ 发表时间:2009-02-23 18:18 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:2
注册日期:2009-02-14 17:14
由于最后一题会错意 理解成为
   XXXXXXXXWelcome tm masm!XXXXXXXXX
   XXXXXXXXWelcome tm masm!XXXXXXXXX
   XXXXXXXXWelcome tm masm!XXXXXXXXX
所以针对这题编出来但是 如果按照我的算法要修改很多颜色的话 那就要定义很多数据(没解决)
而且编译时出了一个错误 我找不出来 帮忙解答下
assume cs:code,ds:data,ss:stack
  data segment
    db 'Welcome to masm!'
    db 16 dup (00000010b)
    db 16 dup (00100100b)
    db 16 dup (01110001b)
  data ends

  stack segment
    dw 8 dup (0)
  stack ends

  code segment
    start:
          mov ax,data
          mov ds,ax
          mov ax,stack
          mov ss,ax
          mov sp,10h
          mov es,B800h

          mov bx,0
          mov cx,3
        s:
          push cx
          mov si,0
          mov di,0

          mov cx,16
       s0:
          mov al,[bx][di]
          mov es:[bx].762h[si],al
          mov ah,[bx].10h
          mov es:[bx].763h[si],ah
          inc di
          add si,2
          loop s0
          add bx,80
          pop cx
          loop s

          mov ax,4c00h
          int 21h

  code ends
end start
r251314w
[第1楼]   [ 回复时间:2009-02-23 18:54 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:2
注册日期:2009-02-14 17:14
屏幕中间地址算错了 不过还没有解决问题
acool
[第2楼]   [ 回复时间:2009-02-24 09:39 ]   [引用]   [回复]   [ top ] 
荣誉值:49
信誉值:0
注册日期:2008-10-15 16:15
屏幕中间地址算错了 不过还没有解决问题
------------------
回复:应该说是楼主“写错”了,没有注意格式。

编译时提示的错误,编译器会给出原因,这是找出编译错误的重要途径,像上面这个错误很容易能找出。

至于逻辑错误,楼主还是自己先想想吧,整理一下程序的逻辑,自己解决收获和成长才能更大。
r251314w
[第3楼]   [ 回复时间:2009-02-24 17:51 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:2
注册日期:2009-02-14 17:14
此贴由 贴主 于 [ 2009-02-24 17:51 ] 结贴。 结贴原因:问题已解决
得分情况:
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved