您的位置:首页 > 其它

【学习笔记】汇编:关于CLD以及DF的用法,还有一点REP的使用

2018-02-26 20:06 477 查看
DF direction Flag 方向标志位
作用是表示DI 以及 SI这两个自增(减)的偏移地址寄存器的自增(减)方向
当DF为1时,DI与SI自增,当DF为0时,DI与SI自减
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是一个复杂的指令,以后再详细了解


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: