je considère que la première case correspond au LSB(bit de poids faible)
alors, ,tu as
#define TAILLE 26
int tableau [TAILLE ]={.....};//déclaration de ton tableau (int*), et le remplissage des valeurs .....
on va faire:
unsigned long resultat=0; //le résultat est pour l'instant à 0
int i;
for (i=0;i<TAILLE;i++) //on parcours tout le tableau
resultat+=(tableau[i]<<i); //on ajoute au résultat chaque bit (case du tableau) en le déplaçant vers la gauche du nombre de cases correspondant...
printf("le résultat est %d", resultat);
tiens moi au courant si ça marche, ou si ton ordre est MSB en premier ;)
edit: le type LONG est codé sur 4 octets, ce qui te donne 32 bits-> TAILLE doit etre inférieur ou égal à 32