一.问题的提出
二.DF标志和串传送指令
DF-方向标志位(Direction Flag)
功能
在串处理指令中,控制每次操作后si,di的增减。
DF = 0:每次操作后si,di递增;
DF = 1:每次操作后si,di递减。
对DF位进行设置的指令:
cld指令:将标志寄存器的DF位设为0(clear)
std指令:将标志寄存器的DF位设为1(setup)
串传送指令1
movsb 功能:(以字节为单位传送)
(1) ((es)×16 + (di)) = ((ds) ×16 + (si))
(2) 如果DF = 0则: (si) = (si) + 1 (di) = (di) + 1
如果DF = 1则:(si) = (si) - 1 (di) = (di) - 1
串传送指令2
movsw 功能:(以字为单位传送)
(1) ((es)×16 + (di)) = ((ds) ×16 + (si))
(2) 如果DF = 0则: (si) = (si) + 2 (di) = (di) + 2
如果DF = 1则:(si) = (si) - 2 (di) = (di) - 2