Instrucțiunile ADC (Add with Carry) și SBB (Subtract with Borrow) includ bitul de depășire (CF) în calcul: dest = dest + src + CF, permițând înlănțuirea operațiilor pentru calcule pe 128, 256 sau mii de biți (criptografie RSA, ECC).
; Adunarea a două numere pe 128 de biți:
; Număr 1: RDX:RAX (RDX = biți superiori, RAX = biți inferiori)
; Număr 2: RBX:RCX (RBX = biți superiori, RCX = biți inferiori)
add rax, rcx ; Adună cei 64 de biți inferiori; generează depășire în CF dacă e cazul
adc rdx, rbx ; Adună cei 64 de biți superiori PLUS flag-ul CF generat anterior
; Scăderea pe 128 de biți:
sub rax, rcx ; Scade jumătatea inferioară
sbb rdx, rbx ; Scade jumătatea superioară minus Carry/Borrow
Criptografie asimetrică: Algoritmii de chei publice (ex: RSA 4096) utilizează lanțuri lungi de ADC pentru a efectua adunări pe blocuri mari de date.
Întrebări & Exemple de Cod:
ADC și SBB în x86_64: Aritmetică cu Precizie Multiplă (128 de Biți)Ai o nelămurire despre utilizarea comenzii
ADC și SBB în x86_64: Aritmetică cu Precizie Multiplă (128 de Biți)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.