...per capirci, vorresti creare una funzione che, dato un intero, lo traduce nella corrispondente sequenza binaria di 0 ed 1¿
codice:
extern void dec2bin(unsigned int, char *);
void dec2bin(unsigned int inp, char *bin){
int i, *p = &inp;
for(i = 8*sizeof(inp)-1; i >= 0; i--)
*(bin+i) = (*p>>i)&1;
}
int k = 0;
for(; k < 10; k++){
int j, nr = rand()%1000;
char *bin = (char *)calloc(32, sizeof(char));
dec2bin(nr, bin);
printf("%d\t");
for(j = 31; j >= 0; j--)
printf("%d", *(bin + j));
printf("\n");
}
383 00000000000000000000000101111111
886 00000000000000000000001101110110
777 00000000000000000000001100001001
915 00000000000000000000001110010011
793 00000000000000000000001100011001
335 00000000000000000000000101001111
386 00000000000000000000000110000010
492 00000000000000000000000111101100
649 00000000000000000000001010001001
421 00000000000000000000000110100101
Robaccia dell'esame di architettura degli elaboratori...