Instrucțiuni Aritmetice în x86_64: ADD, SUB, INC, DEC, IMUL și IDIV în Assembly (x86_64)

Ghid complet pentru operațiuni aritmetice în Assembly: adunarea (ADD), scăderea (SUB), înmulțirea cu semn (IMUL) și împărțirea pe perechea de registre RDX:RAX (IDIV).

Sintaxă
add dest, src | sub dest, src | imul reg, src | idiv divisor

Operațiile aritmetice de bază din x86_64 modifică registrul destinație și actualizează automat flag-urile de stare din registrul RFLAGS (cum ar fi Zero Flag dacă rezultatul este 0 sau Overflow Flag la depășire de capacitate).

Adunare, scădere și particularitatea împărțirii IDIV
; 1. Adunare și scădere de bază:
add rax, 25            ; RAX = RAX + 25
sub rbx, 10            ; RBX = RBX - 10
inc rcx                ; RCX = RCX + 1 (incrementare rapidă)
dec rdx                ; RDX = RDX - 1 (decrementare rapidă)

; 2. Înmulțire cu semn (IMUL):
imul rax, rbx          ; RAX = RAX * RBX
imul rdx, rsi, 50      ; RDX = RSI * 50 (formatul cu 3 operanzi)

; 3. Împărțire cu semn (IDIV) - NECESITĂ ATENȚIE SPECIALĂ!
; În x86_64, IDIV împarte numărul pe 128 de biți format din perechea RDX:RAX la divizor:
; Câtul ajunge în RAX, iar restul (modulo %) ajunge în RDX.

mov rax, 105           ; Deîmpărțitul
cqo                    ; Instrucțiune OBLIGATORIE: extinde semnul din RAX în RDX!
mov rbx, 10            ; Împărțitorul
idiv rbx               ; RDX:RAX / RBX

; Rezultat:
; RAX = 10 (câtul)
; RDX = 5  (restul - operația modulo)
Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Instrucțiuni Aritmetice în x86_64: ADD, SUB, INC, DEC, IMUL și IDIV

Ai o nelămurire despre utilizarea comenzii Instrucțiuni Aritmetice în x86_64: ADD, SUB, INC, DEC, IMUL și IDIV 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.