Bill's solution certainly works if all of your values are below 256, but if any are greater it improperly truncates them:
In[1]:= x = {10, 256};
In[2]:= IntegerString[x, 2, 8]
Out[2]= {"00001010", "00000000"}
In[3]:= padBase2Strings[IntegerString[x, 2]]
Out[3]= {"00001010", "0000000100000000"}
Note this detail from the documentation on the third argument, len:
If len is less than the number of digits in n, then the len least significant digits are returned.