+ -
当前位置:首页 → 问答吧 → invalid instruction operands

invalid instruction operands

时间:2011-12-08

来源:互联网

Assembly code
assume cs:code,ds:data
data segment
    db 'welcome to masm!'
data ends

code segment
    start:
    mov ax,0b800h
    mov es,ax
    mov ax,data
    mov ds,ax
    
    mov cx,16
    mov bx,0
    s0:
    mov byte ptr es:[bx+0b7fh],[bx]   ;错误invalid instruction operands
    add bx,2
    loop s0                    ;放入data中的数据
    
    mov bx,1
    mov cx,8
    s1:
    mov byte ptr es:[bx+0b7fh],8ah            ;放入背景色
    add bx,2
    loop s1
    
    mov cx,2
    s2:
    mov byte ptr es:[bx+0b7fh],0ach            ;放入背景色
    add bx,2
    loop s2
    
    mov cx,6
    s3:
    mov byte ptr es:[bx+0b7fh],89h            ;放入背景色
    add bx,2
    loop s3
    
    mov ax,4c00h
    int 21h
code ends
end start


做王爽书上的练习,在屏幕上显示字符。
第16行有一个错误,不知道怎么修改?

作者: haolly   发布时间: 2011-12-08

1.
 db 'welcome to masm!'

缺少变量名。
2.mov byte ptr es:[bx+0b7fh],[bx] ;错误invalid instruction operands
mov 语句的源和目的不能同时为存储器单元。

作者: jaz   发布时间: 2011-12-08