C operatory bitowe
Bitowe operatory bitowe się wykonać- I (&), logiczną lub wyłączności (^) i (bitowe włącznie lub**|**) operacji.
Składnia
I wyrażenie:
wyrażenie równościI wyrażenie & wyrażenie równości
wyłączne lub wyrażenia:
Wyrażenie Iwyłączne lub wyrażenia ^ I wyrażenia
wyrażenie włącznie lub:
wyłączne lub wyrażeniawyrażenie włącznie lub | wyłączne lub wyrażenia
Operandy operatory bitowe muszą mieć integralną typów, ale ich typów mogą być różne.Tych operatorów wykonywania zwykłych konwersje arytmetycznych; Typ wynik jest typu operandów po konwersji.
C operatory bitowe są opisane poniżej:
Operator |
Opis |
---|---|
& |
Operatory- I podmiot gospodarczy porównuje każdy bit jego pierwszego operandu na odpowiadający mu bit jej drugi operand.Jeśli oba bity są równe 1, odpowiadający mu bit wynik jest ustawiona na 1.W przeciwnym razie odpowiadający mu bit wynik jest równa 0. |
^ |
Operator logiczną lub wyłączności porównuje każdy bit jego pierwszego operandu na odpowiadający mu bit jej drugi operand.Jeśli jeden bit jest równa 0, a inne bit ma wartość 1, odpowiadający mu bit w wyniku jest ustawiona na 1.W przeciwnym razie odpowiadający mu bit wynik jest równa 0. |
| |
Bitowe włącznie lub podmiot gospodarczy porównuje każdy bit jego pierwszego operandu na odpowiadający mu bit jej drugi operand.Jeżeli bit albo 1, odpowiadający mu bit wynik jest równa 1.W przeciwnym razie odpowiadający mu bit wynik jest równa 0. |
Przykłady
Deklaracje te są używane następujące trzy przykłady:
short i = 0xAB00;
short j = 0xABCD;
short n;
n = i & j;
Wynik przypisane do n w tym pierwszym przykładem jest taka sama, jak i (0xAB00 szesnastkowy).
n = i | j;
n = i ^ j;
Bitowe włącznie lub w drugim przykładzie powoduje wartość 0xABCD (szesnastkowo), natomiast lub bitowe wyłączności w trzecim przykładzie produkuje 0x50 (szesnastkowo).
Programu Microsoft
Wyniki operacji na poziomie bitowym na podpisane liczb całkowitych jest zdefiniowane w implementacji zgodnie z ANSI C standard.Dla kompilatora Microsoft C operacje bitowe na całkowite podpisane działają tak samo, jak operacje bitowe na liczby całkowite bez znaku.Na przykład -16 & 99 może być wyrażona w binarne jako
11111111 11110000
& 00000000 01100011
_________________
00000000 01100000
Wynik iloczynu (AND) jest 96 dziesiętnej.
KONIEC Microsoft szczególne