Вы можете использовать BitVector32
для манипулирования битами в 32-битном целом числе и BitArray
для получения массива битов, представляющих набор логических переменных.
Кроме того, довольно просто написать пару функций для управления отдельными битами:
public bool GetBitValue(int integer, int bit) {
return (integer & (1 << bit)) != 0;
}
public bool SetBitValue(ref int integer, int bit, bool value) {
if (value)
integer |= 1 << bit;
else
integer &= ~(1 << bit);
}