[comment]: # attributes: notoc

[comment]: # (terms:  bitand, bitlshift, bitnot, bitor, bitrshift, bitxor )

[comment]: # ({21daac02-ca911365})
# 2 Funkcje bitowe

Wszystkie funkcje wymienione tutaj są obsługiwane w:

-   [Wyrażeniach wyzwalaczy](/manual/config/triggers/expression)
-   [Pozycjach obliczanych](/manual/config/items/itemtypes/calculated)
-   [Makrach wyrażeń](/manual/config/macros/expression_macros)

Funkcje są wymienione bez dodatkowych informacji. Kliknij funkcję, aby zobaczyć pełne szczegóły.

|Function|Description|
|--|--------|
|[bitand](#bitand)|Wartość "bitowego AND" wartości pozycji i maski.|
|[bitlshift](#bitlshift)|Bitowe przesunięcie w lewo wartości pozycji.|
|[bitnot](#bitnot)|Wartość "bitowego NOT" wartości pozycji.|
|[bitor](#bitor)|Wartość "bitowego OR" wartości pozycji i maski.|
|[bitrshift](#bitrshift)|Bitowe przesunięcie w prawo wartości pozycji.|
|[bitxor](#bitxor)|Wartość "bitowego wyłącznego OR" wartości pozycji i maski.|

[comment]: # ({/21daac02-ca911365})

[comment]: # ({e635e2a6-6803853f})
### Szczegóły funkcji

Kilka ogólnych uwag dotyczących parametrów funkcji:

-   Parametry funkcji są oddzielane przecinkiem
-   Wyrażenia są akceptowane jako parametry
-   Opcjonalne parametry funkcji (lub części parametrów) są oznaczone przez
    `<` `>`

[comment]: # ({/e635e2a6-6803853f})

[comment]: # ({79f53232-7ffd1e30})
##### bitand(value,mask) {#bitand}

Wartość operacji „bitwise AND” wartości pozycji i maski.<br>
Obsługiwane typy wartości: *Integer*.

Parametry: 

-   **value** — wartość do sprawdzenia;
-   **mask** (wymagane) — 64-bitowa liczba całkowita bez znaku (0 - 18446744073709551615).

Chociaż porównanie jest wykonywane bitowo, wszystkie wartości muszą być podawane i są zwracane w postaci dziesiętnej. Na przykład sprawdzenie 3. bitu wykonuje się przez porównanie do 4, a nie 100.

Przykłady:

    bitand(last(/host/key),12)=8 or bitand(last(/host/key),12)=4 #ustawiony 3. lub 4. bit, ale nie oba jednocześnie
    bitand(last(/host/key),20)=16 #3. bit nie jest ustawiony, a 5. bit jest ustawiony

[comment]: # ({/79f53232-7ffd1e30})

[comment]: # ({dbf180d5-31f09935})
##### bitlshift(value,bits to shift) {#bitlshift}

Przesunięcie bitowe w lewo wartości pozycji.<br>
Obsługiwane typy wartości: *Integer*.

Parametry: 

-   **value** - wartość do sprawdzenia;
-   **bits to shift** (wymagane) - liczba bitów do przesunięcia.

Chociaż porównanie jest wykonywane w sposób bitowy, wszystkie wartości muszą być podawane i są zwracane w postaci dziesiętnej. Na przykład sprawdzenie 3. bitu odbywa się przez porównanie do 4, a nie 100.

[comment]: # ({/dbf180d5-31f09935})

[comment]: # ({6e54f229-d3633e68})
##### bitnot(value) {#bitnot}

Wartość operacji „bitwise NOT” dla wartości pozycji.<br>
Obsługiwane typy wartości: *Integer*.

Parametr: 

-   **value** — wartość do sprawdzenia.

Chociaż porównanie jest wykonywane bitowo, wszystkie wartości muszą być podawane i są zwracane w postaci dziesiętnej. Na przykład sprawdzenie 3. bitu odbywa się przez porównanie z 4, a nie 100.

[comment]: # ({/6e54f229-d3633e68})

[comment]: # ({cd28d91c-781b9d08})
##### bitor(value,mask) {#bitor}

Wartość operacji „bitwise OR” dla wartości pozycji i maski.<br>
Obsługiwane typy wartości: *Integer*.

Parametry: 

-   **value** - wartość do sprawdzenia;
-   **mask** (wymagane) - 64-bitowa liczba całkowita bez znaku (0 - 18446744073709551615).

Chociaż porównanie jest wykonywane bitowo, wszystkie wartości muszą być podawane i zwracane w postaci dziesiętnej. Na przykład sprawdzenie 3. bitu wykonuje się przez porównanie z 4, a nie 100.

[comment]: # ({/cd28d91c-781b9d08})

[comment]: # ({6dede4f6-ade72509})
##### bitrshift(value,bits to shift) {#bitrshift}

Przesunięcie bitowe w prawo wartości pozycji.<br>
Obsługiwane typy wartości: *Integer*.

Parametry: 

-   **value** - wartość do sprawdzenia;
-   **bits to shift** (wymagane) - liczba bitów do przesunięcia.

Chociaż porównanie jest wykonywane w sposób bitowy, wszystkie wartości muszą być podane i są zwracane w postaci dziesiętnej. Na przykład sprawdzenie 3. bitu odbywa się przez porównanie z 4, a nie 100.

[comment]: # ({/6dede4f6-ade72509})

[comment]: # ({2384b1d9-51a714f0})
##### bitxor(value,mask) {#bitxor}

Wartość operacji „bitowe wykluczające LUB” dla wartości pozycji i maski.<br>
Obsługiwane typy wartości: *Integer*.

Parametry: 

-   **value** - wartość do sprawdzenia;
-   **mask** (wymagany) - 64-bitowa liczba całkowita bez znaku (0 - 18446744073709551615).

Chociaż porównanie jest wykonywane bitowo, wszystkie wartości muszą być podawane i zwracane w postaci dziesiętnej. Na przykład sprawdzenie 3. bitu odbywa się przez porównanie z wartością 4, a nie 100.

[comment]: # ({/2384b1d9-51a714f0})

[comment]: # ({ba59dd3a-e800d07b})
Zobacz [wszystkie obsługiwane funkcje](/manual/appendix/functions).

[comment]: # ({/ba59dd3a-e800d07b})
