 | Questa istruzione è propriamente un prefisso
e va messa davanti
ad un'istruzione che gestisce stringhe
o, in genere, aree di dati. |
 | Il suo compito è quello di obbligare
la ripetizione di questi tipi d'istruzione il numero
di volte indicato dal registro CX. Il processore:
 | controlla se CX
ha valore 0000H: in questo caso non ripete l'istruzione e prosegue con il resto
del programma. |
 | altrimenti decrementa
CX, esegue
l'istruzione di
gestione stringhe e rientra nel loop. |
|
 | Dunque, se il valore iniziale di CX è nullo
il prefisso non produce alcun effetto, cioè nessuna delle
istruzioni supportate viene eseguita. |
 | Va sottolineato che, dopo aver verificato il
valore di CX, viene anche verificato se c'è qualche richiesta
d'interruzione pendente; non c'è dunque il pericolo che la ripetizione
delle istruzioni di gestione stringhe mettano in crisi questa importante
esigenza. |
 | Il prefisso si applica dunque alle istruzioni:
 | MOVS
(e alle sue varianti MOVSB, MOVSW
e MOVSD). |
 | STOS
(e alle sue varianti STOSB, STOSW
e STOSD). |
 | LODS
(e alle sue varianti LODSB, LODSW
e LODSD). |
 | INS (e
alle sue varianti INSB, INSW
e INSD). |
 | OUTS
(e alle sue varianti OUTSB, OUTSW
e OUTSD). |
 | CMPS
(e alle sue varianti CMPSB, CMPSW
e CMPSD). |
 | SCAS
(e alle sue varianti SCASB, SCASW
e SCASD). |
|
 | Le sue caratteristiche sono riassunte nella
seguente tabella (leggi le istruzioni
): |