Operatory bitowe

W tym temacie opisano operatory bitowe, które są dostępne w języku F#.

Podsumowanie operatorów bitowych

W poniższej tabeli opisano operatory bitowe obsługiwane dla nieboxowanych typów całkowitych w języku F#.

Operator Uwagi
&&& Operator BITOWY AND. Bity w wyniku mają wartość 1, jeśli i tylko wtedy, gdy odpowiednie bity w obu operandach źródłowych mają wartość 1.
||| Operator bitowy OR. Bity w wyniku mają wartość 1, jeśli jeden z odpowiednich bitów w operandach źródłowych wynosi 1.
^^^ Bitowy wyłączny operator OR. Bity w wyniku mają wartość 1, jeśli i tylko wtedy, gdy bity w operandach źródłowych mają nierówne wartości.
~~~ Operator negacji bitowej. Jest to operator jednoargumentowy i daje wynik, w którym wszystkie 0 bitów w operand źródłowym są konwertowane na 1 bity, a wszystkie 1 bity są konwertowane na 0 bitów.
<<< Operator bitowego przesunięcia w lewo. Wynikiem jest pierwszy operand z bitami przesuniętymi w lewo przez liczbę bitów w drugim operandzie. Bity przesunięte z najbardziej znaczącej pozycji nie są obracane w najmniej znaczącej pozycji. Najmniej znaczące bity są wypełnione zerami. Typ drugiego argumentu to int32.
>>> Operator bitowego przesunięcia w prawo. Wynikiem jest pierwszy operand z bitami przesuniętymi w prawo przez liczbę bitów w drugim operandzie. Bity przesunięte z najmniej znaczącej pozycji nie są obracane w najbardziej znaczącej pozycji. W przypadku typów niepodpisanych najważniejsze bity są dopełniane zerami. W przypadku podpisanych typów z wartościami ujemnymi najbardziej znaczące bity są dopełniane tymi. Typ drugiego argumentu to int32.

Następujące typy mogą być używane z operatorami bitowymi: byte, , int16uint32uint16sbyteint64uint64int32 (int), nativeint, i .unativeint

Zobacz też