汇编网首页登录博客注册
zhi的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新评论
  • [游客] 1 10/24 11:50
  • [游客] 9 10/24 11:49
最新留言
好友圈
文章收藏
友情链接

[2020-08-23 16:26] 实验4 【bx】何loop的使用

(1)、(2)一下代码已实测达到目的
assume cs:code
code segment
        mov ax,20h
        mov ds,ax
        mov bx,0
        mov cx,40h
        
        s:mov ds:[bx],bx
        inc bx
        loop s
        
        mov ax,4c00h
        int 21h
code ends
end
(3)
我如何知道要复制的字节数量(指令在内存单元的起止/cx值)?
数字在内存中总是用2字节的空间来存储,不论cx设为多少(不超过2字节的情况下,而显然这段程序没有那么大),程序装载到内存的位置都不会变
因此可以任意设置cx值,然后在debug里用u命令找到指令的起止位置,然后重设cx
另一种方法是,每条指令有固定的大小,一条条相加即可得到总字节数量
两种方法,一点也不优雅

assume cs:code
code segment
        mov ax,cs
        mov ds,ax
        mov ax,0020h
        mov es,ax
        mov bx,0
        mov cx,17h
        s: mov al,[bx]
        mov es:[bx],al
        inc bx
        loop s
        mov ax,4c00h
        int 21h
code ends
end
评论次数(0)  |  浏览次数(400)  |  类型(汇编作业) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码