C/Visual C - a nivel de bits

 
Vista:

a nivel de bits

Publicado por Franco Cedillo (2 intervenciones) el 23/09/2005 13:00:22
Hola amigos,

Deseo almacenar 8 caracteres en una variable. Así con los ASCII de 8 bits los concatenaría.

Si tomara del input los caracteres haría lo siguiente

while ( (c=getchar()) != EOLN )
{
masc=( (c-'A'+1)<<8*cont_clave);
clave|=masc;
cont_clave++;
}

he declarado a masc del tipo long al igual que clave. aquí también tengo otra duda pues necesito un tipo de dato que esté compuesto de 8 X 8 bits... un entero de 64 bits...

cont_clave se inicia en 0 y al salir del bucle tendré el número de caractéres leídos

int saca_car_clave(long clave,int cont_clave)
{
return ( 0xFF && ( clave>>(cont_clave*8) ) );
}

pensaba que enviando en int_clave el número de caracter que yo requiero ( del 0 al 7 )
podría obtener del clave los bits ya dentro de un int sencillo o tal vez en un char.

Pero el programa tiene resultados inesperados. Pues la función devuelve 1 o 0... Oh... acabo de ver que uso && en vez de &... corregiré eso...

saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder