Di seguito viene mostrato un programma d’esempio dell’utilizzo degli operatori bitwise con il linguaggio C#
//operatore AND
int a = 74;
int b = 174;
int c = a & b;
this.RichTextBox.Text = "a vale " + a + ", b vale " + b + ", c, ottenuto con l'operatore AND vale " + c + Environment.NewLine;
this.RichTextBox.AppendText("in linguaggio binario si ha " + Convert.ToString(a,2) + " & " + Convert.ToString(b,2) + " = " + Convert.ToString(c,2) + Environment.NewLine + Environment.NewLine);
//operatore OR
int a = 74;
int b = 174;
int c = a | b;
this.RichTextBox.AppendText("a vale " + a + ", b vale " + b + ", c, ottenuto con l'operatore OR vale " + c + Environment.NewLine);
this.RichTextBox.AppendText("in linguaggio binario si ha " + Convert.ToString(a,2) + " | " + Convert.ToString(b,2) + " = " + Convert.ToString(c,2) + Environment.NewLine + Environment.NewLine);
//operatore XOR
int a = 74;
int b = 174;
int c = a ^ b;
this.RichTextBox.AppendText("a vale " + a + ", b vale " + b + ", c, ottenuto con l'operatore XOR vale " + c + Environment.NewLine);
this.RichTextBox.AppendText("in linguaggio binario si ha " + Convert.ToString(a,2) + " ^ " + Convert.ToString(b,2) + " = " + Convert.ToString(c,2) + Environment.NewLine + Environment.NewLine);
//operatore NOT
int a = 74;
int b = ~a;
this.RichTextBox.AppendText("a vale " + a + ", b vale, ottenuto con l'operatore NOT, " + b + Environment.NewLine);
this.RichTextBox.AppendText("in linguaggio binario si ha " + "~" + Convert.ToString(a,2) + " = " + Convert.ToString(b,2) + Environment.NewLine + Environment.NewLine);
//operatore SHIFT a destra
int a =74;
int b = a<<2;
this.RichTextBox.AppendText("a vale " + a + ", b vale, ottenuto con l'operatore SHIFT a sinistra di 2 posizioni, " + b + Environment.NewLine);
this.RichTextBox.AppendText("in linguaggio binario si ha " + Convert.ToString(a,2) + " <<2 = " + Convert.ToString(b,2) + Environment.NewLine + Environment.NewLine);
//operatore SHIFT a sinistra
int a =74;
int b = a>>2;
this.RichTextBox.AppendText("a vale " + a + ", b vale, ottenuto con l'operatore SHIFT a destra di 2 posizioni, " + b + Environment.NewLine);
this.RichTextBox.AppendText("in linguaggio binario si ha " + Convert.ToString(a,2) + " >>2 = " + Convert.ToString(b,2) + Environment.NewLine + Environment.NewLine);
L’output del programma invece sarà il seguente:
a vale 74, b vale 174, c, ottenuto con l'operatore AND vale 10
in linguaggio binario si ha 01001010 & 10101110 = 00001010
a vale 74, b vale 174, c, ottenuto con l'operatore OR vale 238
in linguaggio binario si ha 01001010 | 10101110 = 11101110
a vale 74, b vale 174, c, ottenuto con l'operatore XOR vale 228
in linguaggio binario si ha 01001010 ^ 10101110 = 11100100
a vale 74, b vale, ottenuto con l'operatore NOT, 181
in linguaggio binario si ha ~01001010 = 10110101
a vale 74, b vale, ottenuto con l'operatore SHIFT a sinistra di due posizioni, 40
in linguaggio binario si ha 01001010<<2 = 00101000
a vale 74, b vale, ottenuto con l'operatore SHIFT a destra di due posizioni, 18
in linguaggio binario si ha 01001010>>2 = 00010010
