鱼C论坛

 找回密码
 立即注册
查看: 2769|回复: 3

实验7问题

[复制链接]
发表于 2012-1-16 22:24:52 | 显示全部楼层 |阅读模式
5鱼币
问下 汇编中有没有这样的指令把数据直接复制过去
mov dword ptr es:[bx+0h],ds:[si+0h]
一下是实验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:[bx+0h],ds:[si+0h]
                  mov dword ptr es:[bx+5h],ds:[si+54h]
                  mov word ptr es:[bx+0ah],ds:[di+0a8h]
                  mov ax,[si+54h]
                  mov dx,[si+56h]
                  div word ds:[di+0a8h]
                  mov word ptr es:[bx+0dh],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:[si+0h] 是错的。当然,如果你不拍麻烦,还可以设置好堆栈SS:SP后讲内存单元PUSH到栈顶(这个其实也是内存直接移动到内存)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-1-16 22:24:53 | 显示全部楼层
mov指令不能将内存单元直接移到内存单元,可用一个寄存器中转。所以指令mov dword ptr es:[bx+0h],ds:[si+0h]
是错的。当然,如果你不拍麻烦,还可以设置好堆栈SS:SP后讲内存单元PUSH到栈顶(这个其实也是内存直接移动到内存)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-1-16 22:46:36 | 显示全部楼层
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:[si+0]
          mov es:[bx+0],ax
          mov ax,ds:[si+54h]
          mov es:[bx+5],ax
          mov ax,ds:[di+0a8h]
          mov es:[bx+0ah],ax
                  mov ax,[si+54h]
                  mov dx,[si+56h]
                  div word ptr ds:[di+0a8h]
                  mov word ptr es:[bx+0dh],ax
                  add di,2
                  add si,4h
                  add bx,10
                  loop s

    mov ax,4c00h
    int 21h
codesg ends

end start这个是改进的程序 请大牛帮俺看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-2-17 09:59:53 | 显示全部楼层
膜拜大神们
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 21:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表