Maison  >  Article  >  développement back-end  >  Opérateurs au niveau du bit en C#

Opérateurs au niveau du bit en C#

WBOY
WBOYoriginal
2024-09-03 15:08:43775parcourir

Les opérateurs au niveau du bit ne sont rien d'autre que les opérations effectuées au niveau des bits, et C# permet une variété d'opérations au niveau du bit en utilisant les opérateurs AND, OR, NOT, etc. Les opérateurs généralement utilisés pour les opérations au niveau du bit sont AND (&) qui renvoie vrai lorsque les deux opérandes sont vrais, OU (|) qui renvoie vrai uniquement lorsque les opérandes sont vrais, OU exclusif (XOR ou ^) qui renvoie un résultat comparable en fonction de l'entrée, Maj gauche (<<) qui permet de déplacer le bit vers la gauche, Right Shift (>>) qui est utilisé pour déplacer le bit vers la droite et Complément (~) qui est utilisé sur un seul opérande et renvoie la valeur du bit complémentaire en fonction de l'entrée.

Types d'opérateurs au niveau du bit en C#

Voici différents types d'opérateurs au niveau du bit définis en C# :

  • ET au niveau du bit (&) : Chaque bit du premier opérande est associé à celui de son deuxième opérande. Lorsque les deux bits sont 1 alors le bit résultat est 1 sinon 0.
  • OU au niveau du bit(|) : Chaque bit du premier opérande est associé à celui de son deuxième opérande. Si l'un des bits est 1, alors le bit résultat est 1 sinon 0.
  • OU exclusif au niveau du bit (XOR – ^) : Chaque bit du premier opérande est comparable au bit suivant de son deuxième opérande. Lorsqu'un bit est 0 et l'autre est 1, le bit résultat est 1 sinon le bit résultat est 0.
  • Décalage gauche au niveau des bits (<<) : Il déplace le nombre vers la gauche, en fonction du nombre de bits défini. Les zéros sont ajoutés aux plus petits bits.
  • Bitwise Right Shift (>>) : Il déplace le nombre vers la droite, en fonction du nombre de bits défini. Les zéros sont ajoutés aux plus petits bits.
  • Complément au niveau du bit (~) : L'opérateur de complément au niveau du bit est un opérateur unaire qui opère sur un seul opérande. L'opérateur ~ passe de 1 à 0 et de 0 à 1.

Exemples d'opérateurs au niveau du bit en C#

L'article suivant explique le fonctionnement des opérateurs au niveau du bit. Vous trouverez ci-dessous les exemples d'opérateurs au niveau du bit en C# :

1. Au niveau du bit ET

Il ne donne True que lors de l'utilisation de l'opération AND si les deux valeurs sont True. Cet opérateur peut être implémenté en utilisant l'opérateur '&'.

Exemple :

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
byte myvarB = 20;// This binary is equivalent for 20 is 10100
long myresult = myvarA & myvarB; // The result of AND operation result is: 00000
Console.WriteLine("{0}  AND  {1} result is :{2}",myvarA,myvarB,myresult);
myvarA = 10;// This binary is equivalent for 10 is 01010
myvarB = 10;// This binary is equivalent for 10 is 01010
myresult = myvarA & myvarB; // The result of AND operation result is: 01010
Console.WriteLine("{0}  AND  {1} result is : {2}",myvarA,myvarB,myresult);
}
}

Sortie :

Ouvrez l'éditeur de texte et enregistrez le fichier avec l'extension .cs avec le nom de votre choix. Exécutez le programme en utilisant le compilateur C# approprié et vous obtiendrez le résultat ci-dessous :

Opérateurs au niveau du bit en C#

2. OU au niveau du bit

Il ne fournit FALSE lors de l'utilisation de la méthode OR que si les deux valeurs sont FALSE. L’opération OU est vraie dans tous les autres cas. Cet opérateur peut être implémenté en utilisant l'opérateur '|'.

Exemple :

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
byte myvarB = 20;// This binary is equivalent for 20 is 10100
long myresult = myvarA | myvarB; // The result of OR operation result is: 11110
Console.WriteLine("{0}  OR  {1} result is :{2}",myvarA,myvarB,myresult);
myvarA = 10;// This binary is equivalent for 10 is 01010
myvarB = 10;// This binary is equivalent for 10 is 01010
myresult = myvarA | myvarB; // The result of OR operation result is: 01010
Console.WriteLine("{0}  OR  {1} result is : {2}",myvarA,myvarB,myresult);
}
}

Sortie :

Compilez et exécutez le code ci-dessus, vous obtiendrez le résultat suivant :

Opérateurs au niveau du bit en C#

3. EXOR au niveau du bit

Si les bits associés sont uniques, alors cela donne 1, sinon 0. Cet opérateur peut être implémenté en utilisant l'opérateur '^'.

Exemple :

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
int num1 = 14, num2 = 11, myresult;
myresult = num1^num2;
Console.WriteLine("{0} ^ {1} = {2}", num1, num2, myresult);
}
}

Sortie :

Compilez et exécutez le code ci-dessus, vous obtiendrez le résultat suivant :

Opérateurs au niveau du bit en C#

4. Shift droit au niveau du bit

Si les opérations RightShift sont effectuées avec une valeur binaire, les bits seront décalés vers un emplacement sur le côté droit. Cet opérateur peut être implémenté en utilisant l'opérateur '>>.

Exemple :

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
long myresult = myvarA >> 1; // The right shift operation result is : 0101
Console.WriteLine("{0} is right shifted to 1 position result is:{1}",myvarA,myresult);
}
}

Sortie :

Compilez et exécutez le code ci-dessus, vous obtiendrez le résultat suivant :

Opérateurs au niveau du bit en C#

5. Shift gauche au niveau du bit

Si les opérations LeftShift sont effectuées avec une valeur binaire, les bits seront décalés vers un emplacement sur le côté gauche. Cet opérateur peut être implémenté en utilisant l'opérateur '<<'.

Exemple :

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
byte myvarA = 10;// This binary is equivalent for 10 is 01010
long myresult = myvarA << 1; // The left shift operation result is : 10100
Console.WriteLine("{0} is left shifted to 1 position result is:{1}",myvarA,myresult);
}
}

Sortie :

Compilez et exécutez le code ci-dessus, vous obtiendrez le résultat suivant :

Opérateurs au niveau du bit en C#

6. Complément au niveau du bit

L'opérateur de complément au niveau du bit est spécifié par le « ~ » qui est un opérateur unaire qui opère sur un seul opérande. L'opérateur ~ s'inverse un peu, c'est-à-dire passe de 1 à 0 et de 0 à 1.

Exemple :

using System;
using System.Collections.Generic;
using System.Linq;
public class Program
{
public static void Main()
{
int num = 22, num_result;
num_result = ~num;
Console.WriteLine("~{0} = {1}", num, num_result);
}
}

Sortie :

Compilez et exécutez le code ci-dessus, vous obtiendrez le résultat suivant :

Opérateurs au niveau du bit en C#

Conclusion

Dans cet article, nous avons vu comment les opérateurs au niveau du bit peuvent être utilisés en C# ainsi que leurs fonctionnalités. Ces opérateurs sont utilisés pour effectuer des opérations bit par bit sur des opérandes, également appelés chiffres binaires. L'opérateur au niveau du bit analyse l'interprétation binaire des fonctions des deux entrées cellule par cellule. Ces opérateurs sont principalement utilisés dans les piles de communication dans lesquelles les informations vitales sont symbolisées par les bits individuels de l'en-tête connectés aux données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn