01: // esempi di operazioni bit a bit, stampa di un numero in formato binario
02: #include<stdio.h>
03: #include<stdlib.h>
04: 
05: int main(int argc, char **argv){
06: 
07:   int a;
08:   printf("Inserisci un numero intero < 256: ");
09:   scanf("%d", &a);
10: 
11: 
12:   printf("Il numero inserito e' %d e in binario vale ", a);
13: 
14:   printf("%d", (a >> 7) & 1 ); // in questo caso sposto l'ottavo bit nella posizione 0 ovvero come 'bit meno significativo'. Tramite l'and bit a bit tengo solo lui
15:   printf("%d", (a >> 6) & 1 );
16:   printf("%d", (a >> 5) & 1 );
17:   printf("%d", (a >> 4) & 1 );
18:   printf("%d", (a >> 3) & 1 );
19:   printf("%d", (a >> 2) & 1 );
20:   printf("%d", (a >> 1) & 1 );
21:   printf("%d", (a >> 0) & 1 ); // lo shift di 0 posizioni lascia, ovviamente, tutto invariato
22: 
23:   // piu' avanti scopriremo quanto questo codice e' brutto, ma per ora non abbiamo parlato di cicli...
24: 
25:   printf("\n");
26: 
27: 
28:   return 0;
29: }
30: 
31: 


Se avete commenti o osservaƶioni su questa pagina
mandate un messaggio di posta elettronica a bertoƶƶi@ce.unipr.it