Buenos días:
Estoy intentando hacer un programa donde tengo 19 bytes en una cadena (int telemando1[19]) y los intento leer y meter en otra bit a bit (int1 telemandobits[152]). El objetivo es que si tengo en la primera cadena los valores 8,7,.... pasen a la segunda cadena con los valores binarios 0,0,0,0,1,0,0,0, 0,0,0,0,0,1,1,1, ...
El código que tengo es:
Luego leo la cadena telemandobits[] y no tengo los valores 0 y 1 esperados. La verdad es que creo que tiene que ser una tontería que no veo, pero me estoy volviendo loco.
Alguna sugerencia??
Gracias
Estoy intentando hacer un programa donde tengo 19 bytes en una cadena (int telemando1[19]) y los intento leer y meter en otra bit a bit (int1 telemandobits[152]). El objetivo es que si tengo en la primera cadena los valores 8,7,.... pasen a la segunda cadena con los valores binarios 0,0,0,0,1,0,0,0, 0,0,0,0,0,1,1,1, ...
El código que tengo es:
Código:
int telemando1[19];
int1 telemandobits[152];
int i,z;
for (i=0;i==151;i++) //Aqui inicializo la cadena
{
telemandobits[i]=0;
}
//Estos son los datos que quiero pasar a la otra cadena bit a bit
telemando1[18]=8;
telemando1[17]=7;
telemando1[16]=6;
telemando1[15]=5;
telemando1[14]=4;
telemando1[13]=12;
telemando1[12]=0;
telemando1[11]=1;
telemando1[10]=17;
telemando1[9]=255;
telemando1[8]=255;
telemando1[7]=255;
telemando1[6]=255;
telemando1[5]=255;
telemando1[4]=255;
telemando1[3]=255;
telemando1[2]=255;
telemando1[1]=0;
telemando1[0]=0;
//Aquí creo una cadena de bits con todos los datos
for (i=18;i==0;i--)
{ for (z=0;z==7;z++)
{
telemandobits[((i+1)*8)-(8-z)]=(int1) telemando1[i];
telemando1[i]>>=1; // x>>=y, is the same as x=x>>y
}
}
Luego leo la cadena telemandobits[] y no tengo los valores 0 y 1 esperados. La verdad es que creo que tiene que ser una tontería que no veo, pero me estoy volviendo loco.
Alguna sugerencia??
Gracias