Genel Bakış
BİTÖZELVEYA (BITXOR), iki sayının ikili (binary) karşılıklarını bit bit karşılaştırıp bit düzeyinde özel veya (Exclusive OR) sonucunu verir. Karşılaştırılan bitler birbirinden farklıysa o basamak 1, aynıysa 0 olur. İşlev; yetki bayraklarını açıp kapatmak, basit bir XOR anahtarıyla veri karıştırmak ve iki değerin hangi bitlerde ayrıştığını bulmak için kullanılır.
İşlev tam olarak iki parametre alır; ikisi de negatif olmayan birer tamsayı olmalıdır. Sayıların sırası sonucu etkilemez: sayı1 ile sayı2'nin yerini değiştirmek aynı sonucu verir. İşlev Excel 2013 ile eklenmiştir.
Sonuçlar sırasıyla 6, 6, 0 ve 9 olur. İlk satırda 5 sayısı ikili düzende 101, 3 sayısı ise 011 biçiminde yazılır. Dört'lük basamakta bitler farklıdır (1 ve 0), iki'lik basamakta da farklıdır (0 ve 1); bu iki basamak 1 olur. Bir'lik basamakta ikisi de 1 olduğundan o basamak 0 olur. Aynı iki sayı karşılaştırıldığında hiçbir basamak farklı olmadığı için sonuç 0'dır; 0 ile karşılaştırılan sayı ise değişmeden kalır.
Sonuçlar sırasıyla 9, 11, 0 ve 1 olur. Maskede 1 olan her bit, yetki kodunda tersine çevrilir: açık olan bit kapanır, kapalı olan bit açılır. Maskede 0 olan bitler olduğu gibi kalır. Elif'in satırında maske yetki koduyla aynı olduğundan tüm bitler kapanır; Can'ın satırında ise yalnızca ilk bit açılır.
D2 hücresindeki formül ise karıştırılmış değeri aynı anahtarla yeniden işleme sokar:
Sonuçlar sırasıyla 59, 125, 240 ve 791 olur; D sütunundaki 42, 100, 255 ve 1000 değerleri ise özgün sayılarla aynıdır. Anahtarın 1 olan bitleri ilk işlemde sayının ilgili bitlerini tersine çevirir, ikinci işlemde bunları yeniden eski haline getirir. Bu nedenle özel veya işlemi kendi tersidir. Bu yöntem yalnızca basit bir karıştırma örneğidir; gerçek güvenlik gerektiren veriler için uygun değildir.
Sonuçlar sırasıyla #SAYI!, #SAYI!, #DEĞER!, #SAYI! ve 281474976710654 olur. Negatif sayı ve ondalıklı sayı kabul edilmez; ikisi de #SAYI! hatası verir. Sayıya dönüştürülemeyen metin ise #DEĞER! hatasına yol açar. Parametrelerden biri (2^48)-1 değerinden büyükse yine #SAYI! hatası alırsınız; son satırdaki 281474976710655 değeri ise izin verilen en büyük sayıdır ve hesaplanır.
Söz dizimi ve parametre
- Kategori
- Mühendislik
- İngilizce adı
- BITXOR
- Platform
- Windows Mac Web
2 bağımsız değişken
2 zorunlu
| Bağımsız değişken | Durum | Ne işe yarar |
|---|---|---|
| sayı1number1 | Zorunlu | Karşılaştırmada kullanılacak birinci sayıyı, sayısal bir hücreyi veya sayı üreten bir işlemi belirtir. |
| sayı2number2 | Zorunlu | Karşılaştırmada kullanılacak ikinci sayıyı, sayısal bir hücreyi veya sayı üreten bir işlemi belirtir. |
Geçerli kullanımlar
=BİTÖZELVEYA(5;3)
=BİTÖZELVEYA(A2;B2)
=BİTÖZELVEYA(A2;15)
Desteklenen Excel sürümleri
2013 ve sonrası
- 2003 Desteklenmiyor
- 2007 Desteklenmiyor
- 2010 Desteklenmiyor
- 2013 Destekleniyor
- 2016 Destekleniyor
- 2019 Destekleniyor
- 2021 Destekleniyor
- 2024 Destekleniyor
- 365 Destekleniyor
1. Temel kullanım
A ve B sütunlarındaki sayı çiftlerinin bit düzeyinde özel veya sonucunu C sütununda hesaplayalım. C2 hücresine aşağıdaki formülü yazıp aşağı kopyalayın:=BİTÖZELVEYA(A2;B2)
=BITXOR(A2,B2)
BİTÖZELVEYA
Formülünü incelemek için bir hücre seçin.| A | B | C | |
|---|---|---|---|
| 1 | Sayı1 | Sayı2 | Özel veya sonucu |
| 2 | 5 | 3 | 6 |
| 3 | 12 | 10 | 6 |
| 4 | 7 | 7 | 0 |
| 5 | 9 | 0 | 9 |
TemelExcelDepo v1.0.0
2. Yetki bitlerini tersine çevirme
Her personelin yetki kodu bit bayraklarından oluşur. C sütunundaki maske, tersine çevrilecek bitleri belirler. D2 hücresine aşağıdaki formülü yazıp aşağı kopyalayın:=BİTÖZELVEYA(B2;C2)
=BITXOR(B2,C2)
BİTÖZELVEYA
Formülünü incelemek için bir hücre seçin.| A | B | C | D | |
|---|---|---|---|---|
| 1 | Personel | Mevcut yetki | Maske | Yeni yetki |
| 2 | Ayşe | 13 | 4 | 9 |
| 3 | Mehmet | 8 | 3 | 11 |
| 4 | Elif | 6 | 6 | 0 |
| 5 | Can | 0 | 1 | 1 |
Yetki KodlarıExcelDepo v1.0.0
3. XOR ile karıştırma ve geri alma
Bir sayıyı aynı anahtarla iki kez özel veya işleminden geçirmek özgün sayıyı geri verir. C2 hücresindeki formül sayıyı anahtarla karıştırır:=BİTÖZELVEYA(A2;B2)
=BITXOR(A2,B2)
=BİTÖZELVEYA(C2;B2)
=BITXOR(C2,B2)
BİTÖZELVEYA
Formülünü incelemek için bir hücre seçin.| A | B | C | D | |
|---|---|---|---|---|
| 1 | Özgün sayı | Anahtar | Karıştırılmış | Geri alınmış |
| 2 | 42 | 17 | 59 | 42 |
| 3 | 100 | 25 | 125 | 100 |
| 4 | 255 | 15 | 240 | 255 |
| 5 | 1000 | 255 | 791 | 1000 |
AnahtarExcelDepo v1.0.0
4. Hata durumları
Parametrelerin geçerlilik koşullarını görmek için farklı girdileri deneyelim. C2 hücresine aşağıdaki formülü yazıp aşağı kopyalayın:=BİTÖZELVEYA(A2;B2)
=BITXOR(A2,B2)
BİTÖZELVEYA
Formülünü incelemek için bir hücre seçin.| A | B | C | |
|---|---|---|---|
| 1 | Sayı1 | Sayı2 | Sonuç |
| 2 | -5 | 3 | #SAYI! |
| 3 | 5,5 | 3 | #SAYI! |
| 4 | elma | 3 | #DEĞER! |
| 5 | 281474976710656 | 3 | #SAYI! |
| 6 | 281474976710655 | 1 | 281474976710654 |
HatalarExcelDepo v1.0.0
Kullanırken dikkat edin
- Bit karşılaştırma kuralı: İşlev, sayı1 ve sayı2 parametrelerinin ikili karşılıklarını bit basamağı bit basamağı karşılaştırır. Bir basamakta iki bit birbirinden farklıysa o basamağın değeri 1, aynıysa 0 olur. Sonuç, bu basamak değerlerinin toplanmasıyla bulunur. Örneğin 5 sayısı ikili düzende 101, 3 sayısı 11 biçimindedir; 3 sayısını 011 olarak yazarak iki sayıyı da üç basamaklı hale getirebilirsiniz.
- #SAYI! hatası: sayı1 veya sayı2 negatifse, tamsayı değilse ya da (2^48)-1 değerinden büyükse işlev #SAYI! hatası verir. (2^48)-1 değeri 281474976710655'tir.
- #DEĞER! hatası: sayı1 veya sayı2 sayısal değilse işlev #DEĞER! hatası verir.
- Sürüm bilgisi: BİTÖZELVEYA işlevi Excel 2013 ile eklenmiştir; daha eski sürümlerde kullanılamaz.
- İlgili işlevler: İki sayının bit düzeyinde ve (AND) sonucu gerekiyorsa BİTVE işlevini, bit düzeyinde veya (OR) sonucu gerekiyorsa BİTVEYA işlevini kullanın. Sayıların ikili karşılığını görmek ve bit basamaklarını elle denetlemek için ONLUİKİLİ işlevi işinize yarar.
Desteklenen Excel sürümleri
- Microsoft 365
- Excel 2013
- Excel 2016
- Excel 2019
- Excel 2021
- Excel 2024