Convertir una letra de Binario a su caracter normal

noter:
Pues precisamente habrías optimizado mucho tu programa en uso de memoria, y obtenido directamente los caracteres, cambiando la rutina que trata esos pulsos de la fotorresistencia. Supongo que los strings los consigues más o menos con un bucle similar a esto:

string cadena="";

for (a=0; a< 8; a++) {
    if (pulso=HIGH)
        cadena=cadena+"1";
    else
        cadena=candena+"0";
}




A ver si eres capaz de sustituirlo por algo que se parezca a esto:


char caracter=0;
for (a=0; a< 8; a++) {
    caracter<<=1;
    if (pulso=HIGH)
        caracter=caracter & 1;




Y caracter debería ser directamente la letra.

Efectivamente algo así estoy haciendo

   if (pulso=HIGH) 
        cadena=cadena+"1";
    else 
        cadena=candena+"0";

Pero no logro entender tú código, me lo podrías explicar mejor