DF标志和串移动指令(movsb/movsw)

1.标志寄存器的第10位DF,方向标志位。在串处理指令中,控制每次操作后si,di的增减

DF=0,每次操作后,si、di增加

DF=1,每次操作后,si、di减小

我们可以用汇编语法描述movsb的功能如下:

mov es:[di],byte ptr ds:[si]   ;8086不支持这样的指令,仅做描述之用

如果DF=0:inc si

inc di

如果DF=1:dec si

dec di

可以看出,movsb的功能是将ds:si指向的内存单元中的字节送入es:di中,然后根据标志寄存器DF位的值,将si和si递增或者递减。

2.rep

一般来说,movsb都和rep配合使用,格式如下:rep movsb

用汇编语法来描述:

s:mov sb

  loop s

可见rep的作用就是根据cx的值,重复执行后面的串传送指令。由于没执行一次movsb将si/di都会递增或者递减一个内存单元,则rep movsb可以循环实现(cx)个字符的传送

DF标志和串移动指令(movsb/movsw),,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。