Depending on a variable 1-7, I am interested in ANDing a byte value to to get that number of bits.
Currently I'm doing this:
function getMaskedBits(num, Bit_location: Byte): Byte;
masks: array[1..7]of Byte=(127,63,31,15,7,3,1);
Result:=num and masks[Bit_location];
is there a better (or more efficient way of doing this?)
This works just fine.
You can probably also use something like this:
Result := num and (127 shr (bit_location - 1));
Sorry for not replying earlier: Thanks very much for your help!