df标志和传送指令
flag第十位是df,方向标志位,在串处理指令中,控制每次操作后si,di的增减
df=0,每次操作后都是si,di增
df=1,减
串传送指令
movsb
格式: movsb
功能:
- es16+di=ds16+si
- 如果df=0,则 si=si+1,di=di+1,等于一相反
汇编语言描述
- mov se:[di],byte ptr ds:[si] (汇编不支持这样的指令)
- 如果df=0 inc si inc di else dec si dec di
movsb的功能是将ds:si中的数据传到 es:di中
movsw
格式 movsw
这个是按字来传送,si和di+2或-2
rep
rep movsb
相当于
s: movsb
loop s
rep的作用是根据cx的值,重复执行后面的串传送指令
df 设置指令
cld 指令: 将df设置为0
std指令: 将df设置为1
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment