CodeBlanks Logo Icon CodeBlanks

Bitsel operatörler

&, |, ^, ~, << ve >> ile bitsel işlemleri öğrenirsin.

Bitsel operatörler

Bitsel operatörler tam sayıların ikili (binary) temsilinde bit düzeyinde işlem yapar: & (ve), | (veya), ^ (xor), ~ (değil), << (sola kaydır), >> (sağa kaydır).

Örneğin 12 & 10: 12 = 1100, 10 = 1010, ikili ve → 1000 = 8. 12 | 10 → 1110 = 14.

<< ve >> bitleri kaydırır: 1 << 3 = 8 (1 üç konum sola kayar). Çarpma/bölmeye göre hızlıdır; bayrak (flag) işlemlerinde yaygındır.

Bitsel kaydırma

<< ve >> operatörleri bitleri sola veya sağa kaydırır. Sola her kaydırma ikiye çarpar: 5 << 1 = 10. Sağa her kaydırma ikiye böler: 20 >> 1 = 10.

Kaydırma hızlı bir çarpma/bölme yöntemidir ama yalnızca ikinin kuvvetleri için. x << 3, x * 8 ile aynıdır.

Bayrak işlemlerinde de kullanılır: flags | (1 << 3) ile 3. bayrağı açar, flags & ~(1 << 3) ile kapatırsın. Bu desen düşük seviyeli programlamada yaygındır.

Uygulama Bitsel sonuçları yazdır

main içine int a = 12; ve int b = 10; tanımla. int andResult = a & b; ve int orResult = a | b; ile iki bitsel işlem yap. Her ikisini de std::cout ile std::endl kullanarak ayrı satırda yazdır.

Başlangıç kodu

main.cpp
#include <iostream>

int main() {
    // a ve b tanımla
    // & ve | ile bitsel işlem yap ve yazdır
    return 0;
}

Örnek çözüm

main.cpp
#include <iostream>

int main() {
    // a ve b tanımla
    int a = 12;
    int b = 10;
    // & ve | ile bitsel işlem yap ve yazdır
    int andResult = a & b;
    int orResult = a | b;
    std::cout << andResult << std::endl;
    std::cout << orResult << std::endl;
    return 0;
}

Beklenen çıktı

8
14

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bitsel ve

Soru
int result = a ____ b;
Cevap
int result = a & b;

Açıklama: & bitsel ve operatörüdür.

2 Bitsel operatörleri eşleştir

Kavram Anlamı
& Bitsel ve
| Bitsel veya
^ Bitsel xor
<< Sola kaydır

3 12 & 5 işleminin sonucu nedir?

  • 4 Doğru cevap
  • 17
  • 60
  • 0

Açıklama: 12=1100, 5=0101, 12 & 5 = 0100 = 4.

Başlangıç bölümündeki tüm dersler