L'Istruzione MOV in Assembly x86 (8086/8088): Sintassi, Operandi ed Esempi
Trasferimento Dati Fondamentale
L'istruzione MOV copia dati da un'origine a una destinazione senza alterare l'origine. È il cavallo di battaglia della programmazione 8086/8088.
Sintassi
MOV destinazione, origineCombinazioni di Operandi Valide
| Destinazione | Origine | Esempio |
|---|---|---|
| Registro | Registro | MOV AX, BX |
| Registro | Immediato | MOV CL, 10h |
| Registro | Memoria | MOV DX, [SI] |
| Memoria | Registro | MOV [BX+DI], AL |
| Memoria | Immediato | MOV WORD PTR [0x1000], 1234h |
| Registro di Segmento | Registro/Memoria | MOV DS, AX |
Restrizioni
- Nessun spostamento diretto memoria-memoria (usare un registro intermedio).
- Non è possibile spostare un immediato direttamente in un registro di segmento (usare un registro generale).
- CS (Code Segment) non può essere destinazione.
Esempi Comuni
; Registro a registro MOV AL, BL ; Immediato a registro MOV CX, 256 ; Registro a memoria (override di segmento) MOV ES:[DI], AX ; Memoria a registro (base+offset) MOV BX, [BP+4] ; Carica registro di segmento MOV DS, AXMOV non influisce sui flag. È essenziale per assegnazione di variabili, passaggio di parametri e manipolazione di memoria nella programmazione in modalità reale a 16 bit.