|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面的程序的功能是将“mov ax,4c00h”之前的指令复制到内存0:200处
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
关于这个实验四的问题,我在论坛里面搜索了好多几年前的求助帖子,感觉讲的都不是特别透彻,
想问一下第一个空填写的是CS能理解了,意思就是将ds的值设置为cs,以实现循环的第一条语句mov al,[bx],让ds:[bx]的内容传递给al,也就是cs:[bx]传递给al,以此来实现代码的复制,那么第二个空,17h是怎么计算的呢? 我见 有人说根据debug中cx的值就是代码的字节数,这点小甲鱼的视频中也提到过,但是目前是没有填写完成的代码,生成的exe程序进行debug之后r命令查看中的cx值是准确的吗?还是自己随便写上一个数据来进行debug得到的字节数。
如果不进行debug可以得到这段代码的字节数?是需要自己计算吗? |
|