&= (compound bitwise and)



Açıklama

Bileşik bitsel AND operatörü &= genellikle bir değişkente belirli bitleri DÜŞÜK duruma (0'a) zorlamak için bir değişken ve sabit ile kullanılır. Bu genellikle programlama kılavuzlarında "temizleme" veya "sıfırlama" bitleri olarak adlandırılır.

Bitwise AND & işlecinin gözden geçirilmesi:

 0 0 1 1 işlenen1
0 1 0 1 işlenen2
----------
0 0 0 1 (operand1 ve 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 ANDed" bitleri 0 olarak temizlenir, böylece myByte bir bayt değişkeni ise,

myByte & B00000000 = 0;

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 ANDed" bitleri 0 olarak temizlenir, böylece myByte bir bayt değişkeni ise,

 myByte & B00000000 = 0; 

1 ile "bitsel ANDed" bitleri değişmez,

 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, B00000000 netlik için gösterilir, ancak herhangi bir sayı biçiminde sıfır sıfırdır (hmmm orada felsefi bir şey mi?)

Sonuç olarak - bir değişkenin 0 ve 1 bitlerini (sıfıra ayarlamak) silmek için, değişkenin geri kalanını değiştirmeden bırakarak, B11111100 sabitiyle bitsel AND operatörünü (& =) kullanın

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

Burada, değişkenin bitleri x simgesiyle değiştirildi.

 xxxxxxxx değişkeni
1 1 1 1 1 1 0 0 maske
----------------------
xxxxxx 0 0 
 bit değişmedi
                 bitler temizlendi 

Öyleyse:

 myByte = B10101010; myByte &= B11111100; // results in B10101000 

Ayrıca Bakınız

LANGUAGE & Bitwise AND