[C con Clase] En formato binario

Jose Alvaro Dominguez ilgrim en gmail.com
Vie Dic 5 22:39:50 CET 2008


2008/12/4 yasser gonzalez <yassergs en ispejv.rimed.cu>:
> Para Fabian Arenas
>
> Si lo quieres en binario entonces ve estas dos formas
>
> POr pantalla
>
> printf("%u", datos);
>
> para escribir en un archivo:
>
> fprintf(archivo,"%u", datos);
>
> Ahí tienes

Que tiene que ver unsigned int con binario?  Yo creo que el compi lo
que quiere es mostrar los datos en base 2 por pantalla/archivo/lo que
sea.
Y para eso se lo va a tener que currar un poco realizando un cambio de
bases tirando de divisiones por 2 y modulos. Otra forma seria utilizar
las posiciones de un array como contenedor de unos y ceros que deberia
ir rellenando con sumas/restas sucesivas hasta cuadrarlo por completo

La idea es que, mediante operaciones de resta, vaya sacando los
valores desde mas peso a menos, hasta que el resultado de dichas
operaciones sea cero, en cuyo caso, se habra alcanzado la resolucion
final. Por ejemplo:

171 -128=43
43 -32=11
11-8=3
3-2=1
1-1=0

Por tanto, el array se llenaria empleando las posiciones del array
como si potencias de 2 se tratase (
2^0==array[0],2^1==array[1],2^2==array[0],2^3,2^4,2^5.........)
128 - 64 - 32 - 16 - 8 - 4 - 2 - 1
   1      0       1     0     1   0    1  1


Más información sobre la lista de distribución Cconclase