Spre deosebire de SHR (deplasare logică cu zerouri), SAR (Shift Arithmetic Right) păstrează bitul de semn al numărului, realizând împărțirea matematică corectă a numerelor negative cu puteri ale lui 2. Instrucțiunile ROL și ROR rotesc biții circular fără pierdere de date.
; Deplasare aritmetică (păstrează semnul negativ):
mov rax, -16 ; Reprezentat în complement față de doi
sar rax, 2 ; rax = -16 / 4 = -4 (bitul de semn rămâne 1)
; Rotație circulară la stânga (ROL):
mov al, 10000001b
rol al, 1 ; al devine 00000011b (bitul 7 ajunge la poziția 0 și în Carry)
; Rotație circulară la dreapta (ROR):
ror al, 1 ; al revine la 10000001b
Criptografie: Rotațiile ROL și ROR stau la baza algoritmilor moderni de hashing și cifrare precum SHA-256, MD5 și ChaCha20.
Întrebări & Exemple de Cod:
SAR, ROL și ROR în x86_64: Deplasare Aritmetică și Rotații de BițiAi o nelămurire despre utilizarea comenzii
SAR, ROL și ROR în x86_64: Deplasare Aritmetică și Rotații de Bițisau 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.