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 }