1. 程式人生 > >【學習筆記】彙編:關於CLD以及DF的用法,還有一點REP的使用

【學習筆記】彙編:關於CLD以及DF的用法,還有一點REP的使用

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是一個複雜的指令,以後再詳細瞭解