mnb266 发表于 2019-1-3 19:05:05

实验4,第三题,求大神指导

(3)下面程序的功能是将“mov 安心,4c00h"之前的指令复制到内存0:200处,补全程序,上机调试,跟踪运行结果。
assume cs:code

code segment

                mov ax, cs//cs确定了复制指令的第一位地址
                mov ds, ax
                mov ax, 0020H
                mov es, ax
                mov bx, 0
                mov cx, cx//既然要长度,debug中cx不就是程序的长度吗
        s:mov al,
                mov es:, al
                inc bx
                loop s
               
                mov ax, 4c00H
                int 21H
               
code ends
end

debug后代码如下
https://user.qzone.qq.com/3086155/311/
https://user.qzone.qq.com/3086155/311/
感觉一样,但是mov cx,cx这不是多此一举吗?而且论坛也没有我这个答案,求大神指导

mnb266 发表于 2019-1-3 19:07:55

图片发 不来,但是debug 后0020:0之后的代码除了int 21变成int 1A其他都一样

光羽民 发表于 2019-1-8 16:41:11

程序中的mov ax,4c00h和int 21h的长度为5个字节,按你的方法要把mov cx,cx改成 sub cx,5才行。。。

卡兔压 发表于 2019-1-18 02:45:44

光羽民 发表于 2019-1-8 16:41
程序中的mov ax,4c00h和int 21h的长度为5个字节,按你的方法要把mov cx,cx改成 sub cx,5才行。。。

但是题目是mov cx, —— 而不是sub cx, ———

975131701 发表于 2019-12-19 22:20:23

666
页: [1]
查看完整版本: 实验4,第三题,求大神指导