haha this time I had to ditch bsxfun :) thanks! +1 you too for keeping faith on bsxfun!
2
Convert from characters to numbers (-'0'); arrange the bits in groups of 8 (reshape); convert each group into a number between 0 and 255 (sum(bsxfun(@times, ...))); and from that to char:
>> char(sum(bsxfun(@times, reshape(message_1-'0',8,[]), 2.^(7:-1:0).')))
ans =
HELLO