. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->自由讨论区
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  谁帮忙找找这个程序片段的错误在哪里啊???  [已解决] 回复[ 4次 ]   点击[ 439次 ]  
arey2003
[帖 主]   [ 发表时间:2010-11-29 14:20 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:6
注册日期:2008-05-19 21:20
assume cs:code,ds:data

data segment
  db 'Welcome to masm!',0
data ends


code segment
start:        
        mov ax,data
        mov ds,ax
        
        mov ax,b800h
        mov es,ax
        
        mov si,0
        mov bx,0

s:        mov cl,02
        
        mov es:[bx],ds:[si]
        mov es:[bx+1],cl
        mov cl,ds:[si]
        and cl,11111111b
        mov ch,0
        jcxz s0
        
        add bx,2
        inc si
        jmp s

s0:        mov ax,4c00h
        int 21h

code ends  
end start
zaixuexi
[第1楼]   [ 回复时间:2010-11-29 16:45 ]   [引用]   [回复]   [ top ] 
荣誉值:93
信誉值:0
注册日期:2010-11-29 14:28
.model small
        .code
        main proc far
start:
        xor ax,ax
        xor si,si
        push ds
        push ax
        mov ax,0b800h
        mov es,ax
        mov si,offset cs:src
        mov cx,len
        mov bx,2100h
show:
        mov bl,byte ptr cs:[si]
        mov word ptr es:[di+200h],bx
        inc si
        inc di
        inc di
        dec cx
        jnz show
        ret
        main endp
        src db "welcome to masm!"
        len equ $-src
        end start
masmaster
[第2楼]   [ 回复时间:2010-11-29 16:46 ]   [引用]   [回复]   [ top ] 
荣誉值:268
信誉值:12
注册日期:2010-06-18 22:19

mov ax,b800h ;这里应为: mov ax,0b800h

mov es:[bx],ds:[si] ;mov指令不允许两个操作数都是内存单元,须用寄存器中转一下。

编写完成后编译一下, 编译器会把错误的地方告诉你的。
arey2003
[第3楼]   [ 回复时间:2010-11-29 17:00 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:6
注册日期:2008-05-19 21:20
非常感谢各位高人!!!!
arey2003
[第4楼]   [ 回复时间:2010-11-29 17:39 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:6
注册日期:2008-05-19 21:20
此贴由 贴主 于 [ 2010-11-29 17:39 ] 结贴。 结贴原因:问题已解决
得分情况: 1楼(zaixuexi):3分   2楼(masmaster):3分  
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved