C/Variabili, operatori e costanti/Operatori sui bit: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pietrodn (discussione | contributi)
mNessun oggetto della modifica
Pietrodn (discussione | contributi)
+sintassi colorata
Riga 44:
 
====OR====
<source lang="c">
int a=147;
int ba=97147;
int b=97;
int c=a|b; //OR
printf("c è uguale a %d", c);
</source>
 
Il risultato sarà: <code>c è uguale a 243</code>, perché:
Line 92 ⟶ 94:
 
====AND====
<source lang="c">
int a=147;
int ba=97147;
int b=97;
int c=a&b; //AND
printf("c è uguale a %d", c);
</source>
 
Il risultato sarà: <code>c è uguale a 1</code>, perché:
Line 140 ⟶ 144:
 
====XOR====
<source lang="c">
int a=147;
int ba=97147;
int b=97;
int c=a^b; //XOR
printf("c è uguale a %d", c);
</source>
 
Il risultato sarà: <code>c è uguale a 242</code>, perché:
Line 194 ⟶ 200:
===Esempi===
====Scorrimento a sinistra====
<source lang="c">
int a=42;
int a=42;
int c=a<<1; //Scorrimento a sinistra
printf("c è uguale a %d", c);
</source>
 
Il risultato sarà: <code>c è uguale a 84</code>, perché:
Line 232 ⟶ 240:
 
====Scorrimento a destra====
<source lang="c">
int a=42;
int a=42;
int c=a>>1; //Scorrimento a destra
printf("c è uguale a %d", c);
</source>
 
Il risultato sarà: <code>c è uguale a 21</code>, perché:
Line 270 ⟶ 280:
 
====Complemento a uno====
<source lang="c">
<pre>
#include <stdio.h>
#include <stdlib.h>
Line 280 ⟶ 290:
printf("%u", j);
}
</presource>
 
Il risultato sarà 245, perché: