^= (compound bitwise xor)



Açıklama

Bileşik bitsel XOR operatörü ^= genellikle bir değişken ve bir değişkende belirli bitleri değiştirmek (sabitlemek) için bir sabit ile kullanılır.

Bitwise XOR ^ operatörünün bir incelemesi:

 0 0 1 1 işlenen1
0 1 0 1 işlenen2
----------
0 1 1 0 (operand1 ^ operand2) - döndürülen sonuç 

Sözdizimi

x ^= y; // equivalent to x = x ^ y;

Parametreler

x : değişken. İzin verilen veri türleri: char , int , long .
y : değişken veya sabit. İzin verilen veri türleri: char , int , long .

Örnek Kod

0 ile "bitsel XORed" bitleri değiştirilmez. Eğer myByte bir bayt değişkeni ise,

myByte ^ B00000000 = myByte;

Sözdizimi

x ^= y; // equivalent to x = x ^ y;

Parametreler

x : değişken. İzin verilen veri türleri: char , int , long .
y : değişken veya sabit. İzin verilen veri türleri: char , int , long .

Örnek Kod

0 ile "bitsel XORed" bitleri değiştirilmez. Eğer myByte bir bayt değişkeni ise,

 myByte ^ B00000000 = myByte; 

1 ile "bitsel XORed" bitleri şu şekilde değiştirilir:

 myByte ^ B11111111 = ~myByte; 

Notlar ve Uyarılar

Bitlerle bitsel bir işleçte uğraştığımız için - ikili formatlayıcıyı sabitlerle kullanmak uygundur. Sayılar diğer gösterimlerde hala aynı değerdedir, anlaşılması o kadar kolay değildir. Ayrıca, netlik için B00000000 gösterilir, ancak herhangi bir sayı biçimindeki sıfır sıfırdır.

Sonuç olarak - bir değişkenin 0 ve 1 bitlerini değiştirmek için, değişkenin geri kalanını değiştirmeden bırakarak, B00000011 sabiti ile bileşik bitsel XOR operatörünü (^ =) kullanın

 1 0 1 0 1 0 1 0 değişken
0 0 0 0 0 0 1 1 maske
----------------------
1 0 1 0 1 0 0 1 
 bit değişmedi
                 değiştirilen bitler 

Burada bitler x sembolü ile değiştirilen değişkenler ile aynı gösterimdir. ~ x, x'in tamamlayıcısıdır.

 xxxxxxxx değişkeni
0 0 0 0 0 0 1 1 maske
----------------------
xxxxxx ~ x ~ x 
 bit değişmedi
                 bit seti 

Öyleyse:

 myByte = B10101010; myByte ^= B00000011 == B10101001; 

Ayrıca Bakınız

LANGUAGE ^ Bitwise XOR