Interesting Joozey but one small mistake in your first example of the getBit macro:
n=3, 10110 & 00100 = 00100 so TRUE

either you meant n=2 or you need to add a zero at the end ;-)