Zapis binarnog broja: char binarni_broj[33];
Svaki bit zauzima jedan karakter; '0' je 0; '1' je 1; bilo koji drugi karakter oznacava kraj; MSB se pamti u karakteru sa indeksom 0
Broj moze imati maksimalno 32 znacajne cifre
Code:
unsigned int bin_u_dek(char* bb){
unsigned int j, rezultat = 0, i = 0;
for(; !(((j = (bb[i] ^ 0x30)) & 0xfe) || (i & 0x20)); i++)
rezultat += rezultat + j;
return rezultat;
}
char* dek_u_bin(unsigned int b){
unsigned int i, j = 31, k;
for(; b < (1 << j); j--);
static char rezultat[33];
for(i = ++j; j; j--){
if(k = (b >= 1 << (j - 1)))
b -= 1 << (j - 1);
rezultat[i - j] = 48 + ((k) ? 1 : 0);
}
rezultat[i] = 0;
return rezultat;
}
O_o