$_[0] & 0xff # A bitmask to gets the last (8 bit) byte from the integer.
# It has exactly the same result as $_[0] % 256
>> 5 # bitshift the result of the above so all but
# the 3 MSB drop off the end.
####
perl -le'print join "\t", $_, (unpack "B*", pack "I*", $_),($_ & 0xFF) >> 5 for (0..256)'
####
0 00000000000000000000000000000000 0
1 00000000000000000000000000000001 0
2 00000000000000000000000000000010 0
.
.
30 00000000000000000000000000011110 0
31 00000000000000000000000000011111 0
32 00000000000000000000000000100000 1
33 00000000000000000000000000100001 1
.
.
222 00000000000000000000000011011110 6
223 00000000000000000000000011011111 6
224 00000000000000000000000011100000 7
225 00000000000000000000000011100001 7
.
.
255 00000000000000000000000011111111 7
256 00000000000000000000000100000000 0