Wegen Speicher ... macht es doch so wie IntToStr oder Format?
ein
array[0..31] of Char
als Puffer auf'm Stack,
dann einmal die Zeichen berechnen und den Puffer befüllen,
gleichzeitig werden die Bits automatisch gezählt
und zum Schluß ein SetString, wo nur einmal Speicher allociert wird.