应该是这样的:
assume cs:code(注意这里!)
code(这里!) segment
mov ax,code(还有这里!) -->这里其实就是让代码段和数据段重合
mov ds,ax
mov ax,0020H
mov es,ax
mov bx,0
mov cx,0018H ;-->0018H=24,怎么来的?请看分析:
s: mov al,[bx] ;形如mov 寄存器,数字 这样的,占3个字节;形如mov 寄存器,寄存器 占2个字节
mov es:[bx],al ;这个比较特殊,因为多一个段es引用,所以加1字节,占3字节
inc bx ;占1字节
loops ;占2字节
mov ax,4c00h
int 21h
code ends
所以,楼主自己算一下就可以了。这个规律是通用的,每个指令占几个字节,在设计指令集的时候就确定了。
end |