实验4
1,2:assume cs:code
code segment
start:
mov ax, 0000h
mov ds, ax
mov bx, 0200h
mov cx, 64
s:
mov , bx
inc bx
loop s
mov ax, 4c00h
int 21h
code ends
end start
3:
assume cs:code
code segment
mov ax, cs
mov ds, ax
mov ax, 0020h
mov es, ax
mov bx, 0
mov cx, 23
s:
mov al,
mov es:, al
inc bx
loop s
mov ax, 4c00h
int 21h
code ends
end
1.复制的是 从mov ax, 4c00h之前到mov ax, cs 这段代码的机器码
2.通过debug调试知道整个程序大小为28字节, mov ax, 4c00h 和 int 21h 共占5字节 所以 (cx) = 28 - 5 = 23 第一题有问题的吧,bx的值是200 201 202 203.。。。。。
题目要求的是将0-63放进目标地址
应该先把ds的段地址设置成20H
然后bx既能当偏移地址,又能当成要放进去的数0-63 本帖最后由 ddhssh 于 2021-2-4 22:01 编辑
为什么我低3题cx=17才复制成功 第一题错误比较多
assume cs:code
code segment
start: mov ax,20H ds的段地址是20H,不是0H
mov ds,ax
mov bx,0
mov cx,64
s: mov ,bl ds: 是一个字节数据,不能吧bx 中的一个字放进去
inc bx
loop s
mov ax,4c00H
int 21H
code ends
end start
页:
[1]