package bits

func BitSet(b byte, flag bool, offset byte) byte {
	if flag {
		b |= 1 << offset
	} else {
		b &= 0 << offset
	}
	return b
}

func BitGet(b byte, offset byte) bool {
	mask := byte(1 << byte(offset))
	res := b & mask
	return res > 0
}

func StringBits(b byte) string {
	res := ""
	for i := 7; i >= 0; i-- {
		mask := byte(1 << byte(i))
		if b&mask > 0 {
			res += "1"
		} else {
			res += "0"
		}
	}
	return res
}