MOVS (Loop control with CX counter)

PRÍZNAKY:

O

D

I

T

S

Z

A

P

C

-

-

-

-

-

-

-

-

-


PRÍKLADY:
MOVS operand1,operand2
MOVSB
MOVSW

OPIS: Inštrukcia sa používa ku kopírovaniu bloku pamäti na iné miesto v pamäti. Začiatok kopírovaného bloku je určený dvojicou registrou DS:SI. Adresa, kam sa má blok skopírovať je určená dvojicou registrou ES:DI. Po kopírovaní sa obsah registrov SI a DI zväčší resp. zmenší (podľa príznaku Direction flag) o 1 alebo 2, v závislosti na tom aké veľké dáta sa kopírujú. Kopírovanie prebieha buď: po 8-bitoch MOVSB DI, SI <- DI, SI +/- 1 alebo po 16-bitoch MOVSW DI, SI <- DI, SI +/- 2

Maximálný počet kopírovaných položiek určuje register CX. Ak použijeme pred inštrukciou prefix REP (opakuj, pokiaľ je CX>0), kopírovanie sa ukončí po skopírovaní takého množstva položiek, aké udáva register CX. Ak nepoužijeme žiadny prefix, uskutoční sa kopírovanie iba prvej položky bloku dát bez ohľadu na obsah registra CX.