Что-то вроде этого должно быть достаточно:
#include <stdio.h>
int main (void) {
unsigned int value = 71184592; // Secret key :-)
for (unsigned int shift = 0; shift < 28; shift += 7)
printf ("%c", (value >> shift) & 0x7f);
putchar ('\n');
return 0;
}
Он использует сдвиг битов, чтобы получить нужные биты в семь младших разрядов значения, и маскирование битов, чтобы очистить все остальные биты.
Если вы запустите этот код, вы увидите, что он вполне может извлекать отдельные символы ASCII в группы по семь битов в каждой:
Pax!