^=
[Bileşik Operatörler]Açıklama
Bileşik bitsel XOR operatörü ^= genellikle bir değişkendeki belirli bitleri değiştirmek (ters çevirmek) için bir değişken ve bir sabitle birlikte 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 (işlenen1 ^ işlenen2) - döndürülen sonuç
Sözdizimi
x ^= y; // eşittir x = x ^ y;
Parametreler
x: değişken. İzin verilen veri türleri: char, int, long.
y:sıfır olmayan değişken veya sabit. İzin verilen veri türleri:char, int, long.
Örnek Kod
0 ile "bitsel olarak XORed" olan bitler değişmeden bırakılır. Yani myByte bir bayt değişkeniyse,
myByte ^ 0b00000000 = myByte;
1 ile "bitsel XORed" olan bitler şu şekilde değiştirilir:
myByte ^ 0b11111111 = ~myByte;
Notlar ve Uyarılar
Bitsel bir operatörde bitlerle uğraştığımız için - ikili biçimlendiriciyi sabitlerle kullanmak uygundur. Rakamlar diğer temsillerde hala aynı değerdedir, anlaşılması o kadar kolay değildir. Ayrıca, netlik için 0b00000000 gösterilir, ancak herhangi bir sayı biçiminde sıfır, sıfırdır.Bitsel bir operatörde bitlerle uğraştığımız için - ikili biçimlendiriciyi sabitlerle kullanmak uygundur. Rakamlar diğer temsillerde hala aynı değerdedir, anlaşılması o kadar kolay değildir. Ayrıca, netlik için 0b00000000 gösterilir, ancak herhangi bir sayı biçiminde 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şmeden bırakırken, 0b00000011 sabitiyle bileşik bitsel XOR operatörünü (^=) kullanın
1 0 1 0 1 0 1 0 variable
0 0 0 0 0 0 1 1 mask
----------------------
1 0 1 0 1 0 0 1
bit değişmedi bitler değiştirildi
Burada x sembolü ile değiştirilen değişken bitleri ile aynı gösterim. ~x, x'in tümleyenini temsil eder.
x x x x x x x x variable
0 0 0 0 0 0 1 1 mask
----------------------
x x x x x x ~x ~x
bit değişmedi bit seti
Yani:
myByte = 0b10101010; myByte ^= 0b00000011 == 0b10101001;
Ayrıca Bakınız
LANGUAGE ^ Bitwise XOR