实验九的问题。
这是我的代码 我在用MASM编译的时候,编译不出来。提示的错误是在标号A和S处。A2070 p200.asm(14):错误:无效的指令操作数A2070 p200.asm(20):错误:无效的指令操作数 我语法哪里错了啊?求大神指导。
请把代码贴出来,不要上截图 ilyou2049 发表于 2014-2-27 15:03 static/image/common/back.gif
请把代码贴出来,不要上截图
assume cs:code,ds:data
data segment
db 'welcome to masm!'
data ends
code segment
xiaoxu:mov ax,0B800H
mov ds,ax
mov bx,771h
mov si,0
mov ax,data
mov es,ax
mov di,0
mov cx,16
s:mov ds:,es:
add si,2
inc di
loop s
mov si,1h
mov cx,16
a:mov ds:,02h
add si,2
loop a
mov ax,4c00h
int 21h
code ends
end xiaoxu
是错在两个标号处了,编译器不知你要进行的是字节还是字操作 ilyou2049 发表于 2014-2-27 15:08 static/image/common/back.gif
是错在两个标号处了,编译器不知你要进行的是字节还是字操作
那应该怎么改啊?我进行的是字节操作。 只是显示了黑底绿字,看我的代码:assume cs:codesg, ds:datasg, ss:stacksg
datasg segment
db "welcome to masm!"
db 2h, 24H, 71h
datasg ends
stacksg segment
dw 8 dup(0)
stacksg ends
codesg segment
start: mov ax, datasg
mov ds, ax
mov ax, 0b86eh
mov es, ax
mov ax, stacksg
mov ss, ax
mov sp, 16
mov bx, 0
mov si, 0
mov di, 0
mov bp, 0
mov cx, 3
s1: push cx
mov cx, 16
mov ah, ds:
inc bp
s: mov al, ds:
inc di
mov es:, ax
add si, 2
loop s
mov si, 0
mov di, 0
add bx, 160
pop cx
loop s1
mov ax, 4c00h
int 21h
codesg ends
end start 茗艹莜主 发表于 2014-2-27 15:10 static/image/common/back.gif
那应该怎么改啊?我进行的是字节操作。
assume cs:code,ds:data
data segment
db 'welcome to masm!'
data ends
code segment
xiaoxu: mov ax,0B800H
mov ds,ax
mov bx,71Ah
mov si,0
mov ax,data
mov es,ax
mov di,0
mov cx,16
s: mov al, es:
mov ah, 02H
mov ds:,ax
add si,2
inc di
loop s
mov si,1h
mov cx,16
mov ax,4c00h
int 21h
code ends
end xiaoxu
页:
[1]