Skip to main content

Que sont les opérateurs bitwise?

Dans un programme informatique, les opérateurs bitwise sont des opérateurs pour manipuler les modèles de bit dans les expressions.Dans le sens bit et, ou, exclusif ou (xOR), et non, le quart de droite et le décalage gauche sont des opérations communes.La plupart des langages de programmation informatique incluent les six de ces opérateurs.Ils sont souvent utilisés pour définir, effacer ou renverser des bits individuels dans des programmes qui contrôlent le matériel informatique.Les opérateurs de bit dans le sens bit sont également fréquemment utilisés dans les algorithmes de chiffrement et de compression des données.

Les opérateurs courants sur le sens bit sont généralement représentés symboliquement dans les langages de programmation comme C, C ++ et Java.Ils sont utilisés dans les expressions comme le seraient les opérateurs arithmétiques comme le plus ou les signes moins.L'opérateur du bit et est représenté avec l'ampes et , ou avec le tuyau | et xor avec le caret ^ .Non, également connu sous le nom d'opérateur de complément, est indiqué par un tilde ~ .

L'opérateur de shift droit utilise un double transpareur pointant vers la droite .En revanche, le décalage gauche est indiqué par un double transport à gauche <<.Java comprend une autre opération de décalage à droite, illustrée avec un transporteur triple point à droite .

Les opérateurs bitwise appliquent une opération logique à chaque paire de bits de leurs opérandes.Non, le changement droit et le quart de gauche n'ont qu'un seul véritable opérande;La deuxième valeur dans les opérations de changement est le nombre de bits.Pour mieux comprendre le fonctionnement des opérateurs de bit sur le sens du bit, un individu peut visualiser ses opérandes en chiffres binaires.Par exemple, l'opérateur de complément retourne chaque bit de son opérande unique à l'état opposé.Un devient un zéro et un zéro devient un.Le complément de la valeur binaire 8 bits 00110101 est 11001010.

L'opérateur et ont deux opérandes.Bit à bit, une logique et une opération sont effectuées en utilisant un bit correspondant à partir de chaque opérande.Le résultat de chaque opération de bit est placé dans cette position de bits du résultat global.Par exemple, l'opérateur et l'opérateur traitera le bit 7 d'un opérande avec le bit 7 de l'autre opérande.Le résultat sera stocké dans le bit 7 du résultat global.

Dans une opération et une opération, les deux bits d'opérande doivent être ceux pour que le résultat soit un, sinon le résultat est nul.Par exemple, si les valeurs binaires 8 bits des opérandes sont de 00110101 et 11110000, le résultat sera 00110000. Une utilisation courante de l'opérateur est à zéro des bits particuliers dans le résultat.Cela se fait en plaçant des zéros dans ces positions de bits dans l'un des opérandes.

Dans une ou opération, les deux bits d'opérande doivent être des zéros pour que le résultat soit nul;Sinon, le résultat en est un.Une utilisation courante de l'opérateur OR consiste à définir certains bits du résultat à ceux.Cela se fait en plaçant ceux dans ces positions de bits dans l'un des opérandes.Pour l'opération XOR, le résultat est nul si les deux bits d'opérande sont nul ou si les deux bits d'opérande sont un mdash; sinon, le résultat est un.

Le changement de gauche et le changement droit déplacent les bits dans l'opérande gauche ou à droite par le numéro spécifiéde positions de bits.Un décalage à droite logique déplace un zéro dans le bit le plus à gauche dans le cadre du décalage.Un décalage arithmétique droit copie le bit le plus à gauche mdash; le bit de signe mdash; avant le passage dans la même position après le changement.Le bit d'origine est également décalé avec le reste.L'un ou l'autre type de changement de gauche déplace un zéro dans le bit le plus à droite.

Lorsqu'un opérande est décalé à droite, le bit le plus à droite avant le changement est simplement jeté.De même, le bit le plus à gauche avant un changement de gauche est éliminé.Il ne s'enroule pas à l'autre extrémité de l'opérande.

Les opérations de décalage bit en fonction de la langue et de la mise en œuvre dépendantes.Par exemple, en C et C ++, et << effectuer des changements logiques si l'opérande est un entier non signé.Si l'opérande est un entier signé, il est probable qu'un changement arithmétique sera effectué à la place.En Java, tous les opérandes sont considérés comme signés et les changements arithmétiques sonttoujours exécuté avec et <<.L'opérateur est utilisé pour un décalage à droite logique, mais il est toujours possible de faire accidentellement un changement de droite arithmétique à la place sans dactylographie prudente.

Les complications peuvent également survenir lorsque les opérandes ont des longueurs de bits différentes ou lorsque certains sont signés etCertains ne sont pas signés.Les opérateurs et les constantes numériques au milieu d'une expression complexe peuvent ne pas être évalués comme prévu.Il faut prendre soin de spécifier la taille et la nature signée / non signée de chaque quantité dans l'expression.Cela peut être fait avec une dactylographie prudente ou des affectations provisoires à des types de variables spécifiques dans le code du programme.