Istruzioni per stringhe nel microprocessore 8086
Istruzioni di manipolazione stringhe 8086
L'8086 fornisce un set dedicato di istruzioni per stringhe che operano su puntatori sorgente (SI) e destinazione (DI), semplificando drasticamente le operazioni di blocco di memoria. Ogni istruzione ha forme byte (B), word (W) e generiche, e si ripete tramite prefissi REP.
Trasferimento dati
- MOVS / MOVSB / MOVSW – Sposta byte/word da [SI] a [DI]; incrementa/decrementa automaticamente i puntatori.
- LODS / LODSB / LODSW – Carica byte/word da [SI] in AL/AX.
- STOS / STOSB / STOSW – Memorizza AL/AX in [DI].
Confronto e ricerca
- CMPS / CMPSB / CMPSW – Confronta [SI] con [DI]; imposta i flag.
- SCAS / SCASB / SCASW – Confronta AL/AX con [DI]; usato per la scansione.
Note sull'uso
- Il Direction Flag (DF) controlla l'incremento (DF=0) o il decremento (DF=1) dei puntatori.
- I prefissi REP/REPE/REPNE ripetono fino a CX=0 o condizione soddisfatta.
- Queste istruzioni sono la spina dorsale di
memcpy,strcmp,strlennelle librerie assembly.