Instrucțiunea MOV: Transferul de Date între Registre, Memorie și Literale în Assembly (x86_64)

Ghid complet pentru instrucțiunea MOV în x86_64: reguli fundamentale de operare, specificatorii de dimensiune (byte, word, dword, qword) și interdicția transferului memorie-la-memorie.

Sintaxă
mov dest, src | mov qword [rbp-8], rax

Instrucțiunea MOV este cea mai frecvent utilizată instrucțiune din arhitectura x86_64. Numele său este o ușoară eroare de terminologie istorică: MOV nu mută (nu golește sursa), ci copiază datele din sursă în destinație.

Scenarii corecte și erori comune cu MOV în NASM
; 1. Transfer între registre (permis):
mov rax, rbx

; 2. Încărcarea unei constante literale imediate:
mov rcx, 1000

; 3. Citirea din memorie (folosim paranteze drepte [] pentru dereferențiere):
mov rax, [rbp - 8]             ; Citește 8 octeți din stivă în RAX

; 4. Scrierea în memorie cu specificator explicit de dimensiune:
mov byte [rdi], 0              ; Scrie 1 octet (char) la adresa stocată în RDI
mov dword [rsi + 4], 500       ; Scrie 4 octeți (int 32-bit) la adresa RSI + 4
mov qword [rax + rbx*8], 100   ; Scrie 8 octeți (int 64-bit)

; REGULĂ FUNDAMENTALĂ x86: Nu există instrucțiune MOV de la memorie la memorie!
; mov [destinatie], [sursa]    ; EROARE DE COMPILARE!
; Soluția corectă: folosim un registru intermediar:
mov rdx, [sursa]
mov [destinatie], rdx
Specificator dimensiune Număr de biți / octeți Echivalent tip în limbajul C
byte 8 biți (1 octet) char / uint8_t
word 16 biți (2 octeți) short / int16_t
dword (Double Word) 32 biți (4 octeți) int / int32_t
qword (Quad Word) 64 biți (8 octeți) long long / int64_t / pointer
Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Instrucțiunea MOV: Transferul de Date între Registre, Memorie și Literale

Ai o nelămurire despre utilizarea comenzii Instrucțiunea MOV: Transferul de Date între Registre, Memorie și Literale sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.