王爽汇编语言第二版实验4

实验4 [bx]和loop的使用
(1)编程,向内存0:200~0:23f依次传送数据0~63(3FH)
(2) 编程,向内存0:200~0:23f依次传送数据0~63(3FH),程序中只能使用9条指令,
9条指令中包括“mov ax,4c00h” 和"int 21h"
(3)下面的程序的功能是将“mov ax,4c00h”之前的指令复制到内存0:200处,补全程序
assume cs:code
code segment
mov ax,____
mov ds,ax
mov ax,0020h
mov es,ax
mov bx,0
mov cx,_____
w:mov al,[bx]
mov es:[bx],al
inc bx
loop w
mov ax,4c00h
int 21h
code ends
end请问下面的填空应该怎么填与分析过程,谢谢

第一空填CS,这可由指令mov al,[bx]得出,因为题目要求复制指令,而指令在代码段内(即CS指向的段),由程序可知此处是从内存取数,然后存到指定的0:200处,因此ds应和CS相同.
第二空可通过debug来填,或者查出每条指令的字节数,然后相加起来,也就是要复制的指令的字节数.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-09
第一空填cs,因为要把程序全部复制过去,而cs中即程序开始内存地址的段地址。
第二空填cx,不用debug查询,因为4.9章节处有提到在程序载入时程序的长度保存在cx中。