A bit manipulation readability enhancement library.
Provides bit counting and other niche bit manipulation facilities for System.UInt64 values.
public static class UInt64AlgorithmsExtensions
Inheritance System.Object đŸ¡’ UInt64AlgorithmsExtensions
Methods | Â |
---|---|
AreOnlyFirstAndLastBitsSet(this ulong) | Determines if only the lowest bit and one other higher bit are set. |
CountBitsSet(this ulong) | Counts the bits that are set to 1 in a number. |
CountLeadingZeros(this ulong) | Computes the number of sequentially zeroed bits occupying the most significant bit positions. |
CountTrailingZeros(this ulong) | Computes the number of sequentially zeroed bits occupying the least significant bit positions. |
GetHighestBitSet(this ulong) | Calculate the index of the highest bit that’s been set. |
GetLowestBitSet(this ulong) | Calculate the index of the lowest bit that’s been set. |
GetSign(this ulong) | Returns a value indicating the sign of the number. |
IsEven(this ulong) | Determines if the number is odd. |
IsNegative(this ulong) | Indicates if the number is negative. (Always false for unsigned numbers) |
IsOdd(this ulong) | Determines if the number is odd. |
IsPositive(this ulong) | Indicates if the number is zero or positive. (Always true for unsigned numbers) |
IsPowerOfTwo(this ulong) | Determines if the number is a power of two. |
PopCount(this ulong) | Counts the bits that are set to 1 in a number. |
RotateLeft(this ulong, int) | Performs a bitwise left rotation on a number. |
RotateRight(this ulong, int) | Performs a bitwise right rotation on a number. |
RoundUpToPowerOfTwo(this ulong) | For any given number return the number if it’s a power of two, or return the next higher power of two capable of fitting in the data type. |