作用是表示DI 以及 SI这两个自增(减)的偏移地址寄存器的自增(减)方向
DATAS SEGMENT
;此处输入数据段代码
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
CALL cpy_Boot
MOV AH,4CH
INT 21H
;=================================================
BOOT: MOV AX,1000H
MOV AX,1000H
MOV AX,1000H
MOV AX,1000H
END_BOOT: NOP
;=================================================
cpy_Boot:
MOV BX,CS
MOV DS,BX
MOV SI,OFFSET BOOT
MOV BX,0
MOV ES,BX
MOV DI,07E00H
MOV CX,OFFSET END_BOOT - BOOT
CLD
REP MOVSB
END_CPY_BOOT: RET
;=================================================
CODES ENDS
END START
该程序的作用是将BOOT到END_BOOT之间的指令存放到0:7E00之间
其中REP是一个复杂的指令,以后再详细了解