Nasıl kullanılır?
- Birinci değeri Birinci değer (A) kutusuna, işlem kullanıyorsa ikinciyi İkinci değer (B) kutusuna yazın.
- Değerlerin yazıldığı Sayı sistemi ile İşlem seçimini yapın.
- Kaydırma ya da döndürmede Kaydırma ya da döndürme miktarı alanını ayarlayın. Sonucun Genişlik değerini seçin.
- Sonucu Onaltılık, Ondalık (işaretsiz) ve İkili satırlarında, altındaki bit bit tabloda okuyun.
Mantık işlemleri
0xCA AND 0x0F = 11001010 AND 00001111 = 00001010 = 0x0A
- AND, iki bit de 1 olan yerde 1 verir. Bazı bitleri koruyup diğerlerini sıfırlamak için kullanılır.
- OR, bitlerden biri 1 olan yerde 1 verir. Bit açmak için kullanılır.
- XOR, tam olarak bir bit 1 olan yerde 1 verir. Aynı XOR iki kez uygulanırsa özgün değer geri gelir.
- NAND ve NOR, AND ve OR'un sonuna NOT eklenmiş hâlidir. NOT, genişlik içindeki her biti çevirir.
Kaydırma ve döndürme
Sola kaydırma her biti bir yer yukarı taşır, alttaki boşluğu sıfırlarla doldurur; en üstten çıkan bit kaybolur. Mantıksal sağa kaydırma her biti aşağı taşır ve üst kısmı sıfırlarla doldurur. Aritmetik sağa kaydırma üst kısmı işaret bitinin kopyalarıyla doldurur; böylece negatif bir değer negatif kalır. Döndürmede bir uçtan çıkan bit diğer uçtan geri girer.
0xCA sola 1 kaydırılırsa 10010100 (0x94); mantıksal sağa 01100101 (0x65); aritmetik sağa 11100101 (0xE5); sola döndürme 10010101 (0x95)
Genişlik önemlidir
Sıfırın NOT'u 8 bitte 0xFF, 16 bitte 0xFFFF, 32 bitte 0xFFFFFFFF'dir; çünkü sonuç genişlik kadar bit taşır. Genişlikten fazla bit isteyen bir değer tamamen saklanamaz: araç en düşük bitlerini kullanır ve Kontrol satırını kırmızı gösterir.
Bu aracın kapsamadığı konular
- Diller farklıdır. JavaScript'in bit işleçleri işlenenlerini 32 bitlik tam sayılara çevirir, bu yüzden 64 bitlik sonuç gösteremezler. Araç, seçtiğiniz genişliğin bitlerini gösterir ve 64 bitlik değerleri BigInt ile tam tutar.
- Bir yapının içindeki bit alanları, bayt sırası ve dosya biçimleri: bunlar için onaltılık görüntüleyiciye bakın.
Örnek: 8 bitte 0xCA AND 0x0F
Sayı sistemi onaltılık, Genişlik 8 bit seçilip ilk değere CA, ikinciye 0F yazıldığında sonuç 00001010 olur: onaltılıkta 0x0A, ondalıkta 10. Yalnızca iki değerde de aynı yerde 1 olan bitler kalır: ikisi de 0F'nin koruduğu son dört basamakta olan iki bit.
| Sonuç | Değer |
|---|---|
| Onaltılık | 0x0A |
| İkili (binary) | 0b0000 1010 |
| Ondalık (işaretsiz) | 10 |
Sık sorulan sorular
Mantıksal ve aritmetik sağa kaydırma arasındaki fark nedir?
İkisi de bitleri bir yer aşağı taşır. Mantıksal kaydırma üst kısmı sıfırlarla doldurur ve değeri işaretsiz kabul eder. Aritmetik kaydırma işaret bitini kopyalar, bu yüzden negatif değer negatif kalır: 0xCA −54'tür, bir yer sağa kaydırılınca −27 (0xE5) olur.
NOT neden genişliğe göre farklı sonuç verir?
NOT, genişlikteki her biti çevirir. Sıfır 8 bitte 00000000'dır; NOT'u 11111111 (0xFF) olur. 32 bitte sıfırın 32 biti vardır ve NOT 0xFFFFFFFF verir. Aynı sayı her genişlikte farklı sayıda bit taşır.
Döndürme, kaydırmanın yapmadığı neyi yapar?
Kaydırma bir uçtan çıkan bitleri kaybeder. Döndürme bu bitleri diğer uca geri koyar, böylece hiçbir bit kaybolmaz. Genişlik kadar döndürmek aynı değeri verir.
Genişliğe sığmayan bir değer neden işaretlenir?
Genişliğin istediğinden fazla bit gerektiren bir değer tamamen saklanamaz. Araç en düşük bitleri kullanır; bu yüzden 8 bitte 300, 44 olur. Kontrol satırı ne olduğunu söyler, böylece sonuç yazdığınız değer sanılmaz.
İkili sayıları boşluklu yazabilir miyim?
Evet. Boşluklar ve alt çizgiler yok sayılır; 1100 1010 ile 11001010 aynı değerdir. Onaltılıkta 0x, ikilide 0b öneki de yazılabilir.
Kaynaklar
Rakamlar ve metin en son 10 Kasım 2026 Salı tarihinde kontrol edildi.