实验7问题
问下 汇编中有没有这样的指令把数据直接复制过去mov dword ptr es:,ds:
一下是实验7的代码 编译以后提示错误就在上面的代码上
codesg segment
start: mov ax,data
mov ds,ax
mov ax,table
mov es,ax
mov di,0
mov si,0
mov bx,0
mov cx,21
s:
mov dword ptr es:,ds:
mov dword ptr es:,ds:
mov word ptr es:,ds:
mov ax,
mov dx,
div word ds:
mov word ptr es:,ax
add di,2
add si,4h
add bx,10
loop s
mov ax,4c00h
int 21h
codesg ends
end start
mov指令不能将内存单元直接移到内存单元,可用一个寄存器中转。所以指令mov dword ptr es:,ds:
是错的。当然,如果你不拍麻烦,还可以设置好堆栈SS:SP后讲内存单元PUSH到栈顶(这个其实也是内存直接移动到内存) codesg segment
start: mov ax,data
mov ds,ax
mov ax,table
mov es,ax
mov di,0
mov si,0
mov bx,0
mov cx,21
s:
mov ax,ds:
mov es:,ax
mov ax,ds:
mov es:,ax
mov ax,ds:
mov es:,ax
mov ax,
mov dx,
div word ptr ds:
mov word ptr es:,ax
add di,2
add si,4h
add bx,10
loop s
mov ax,4c00h
int 21h
codesg ends
end start这个是改进的程序 请大牛帮俺看看 膜拜大神们{:10_254:}
页:
[1]