Informatică Programare
Secventa de biti si operatii pe biti C++
Secvența de biți și operațiile pe biți în C++ permit manipularea directă a biților din reprezentarea binară a numerelor întregi. Aceste operații sunt rapide și utile în optimizări.
Operatori pe biți
- & (AND) a & b - rezultat 1 doar dacă ambii biți sunt 1. Exemplu: 5 & 3 = 1 (101 & 011 = 001).
- | (OR) a | b - rezultat 1 dacă cel puțin un bit este 1. Exemplu: 5 | 3 = 7 (101 | 011 = 111).
- ^ (XOR) a ^ b - rezultat 1 dacă biții sunt diferiți. Exemplu: 5 ^ 3 = 6 (101 ^ 011 = 110).
- << (shift stânga) a << n - mută biții lui a la stânga cu n poziții, echivalent cu înmulțirea cu 2^n. Exemplu: 3 << 2 = 12.
Aplicații practice
- 1 Verificare bit if(x & (1 << k)) - verifică dacă bitul k al lui x este 1.
- 2 Setare bit x = x | (1 << k) - setează bitul k la 1.
- 3 Ștergere bit x = x & ~(1 << k) - setează bitul k la 0.
Folosește operații pe biți pentru sarcini de nivel scăzut, cum ar fi manipularea de flag-uri sau optimizări.