OPERATORY LOGICZNE
&& logiczne "i" AND
|| logiczne "lub" OR
! negacja logiczna NOT
Operatory logiczne operują na wartościach logicznych (prawda/fałsz).
Operator && zwraca wartość true (prawda) wtedy i tylko wtedy gdy oba argumenty mają wartość logiczną true.
Operator || zwraca true gdy przynajmniej jeden z argumentów ma wartość true.
Operator ! neguje wartość logiczną, a więc gdy argument ma wartość true to zwraca false, a gdy false to zwraca true.
a = true;
b = false;
c = a && b; //c ma wartość false
c = a || b; //c ma wartość true
OPERATORY BITOWE
Przykłady dla danych 8-bitowych Przykłady ze skryptów
~ Operator negacji
10011010 x =15410 15410
----------- ~
01100101 ~x =10110 -15510
& Operator koniunkcji bitowej ustawia dany bit na 1 gdy oba bity na danej pozycji maja wartość 1:
01011100 x =9210
10011010 y =15410
----------- &
00011000 z = x & y =2410
| Alternatywa bitowa ustawia bit na 1 gdy minimum jeden z bitów na danej pozycji ma wartość 1:
11000101 x =19710
10010001 y =14510
----------- |
11010101 z = x|y =21310
^ Różnica bitowa ustawia bit na 1 gdy tylko jeden z bitów jest 1:
10011011 x =19710
11001010 y =20210
----------- ^
01010001 z = x ^ y =8110
<< >> >>> Operatory przesunięcia bitowego operują na bitach zmiennych (przykład dla danych 16-bitowych)
x2
x10
x
0000000000001110
14
0000000001111011
123
1111111111110011
-13
x << 2
0000000000111000
56
0000000111101100
492
1111111111001100
-52
x >> 2
0000000000000011
3
0000000000011110
30
1111111111111100
-4
x >>> 2
0011111111111100
16380
x >>> 3
0000000000000001
1
0000000000001111
15
0001111111111110
8190
Przesunięcia << i >> zachowują znak liczby, a >>> zeruje najstarszy bit i tworzy liczbę dodatnią.
PixelowatyPixel