"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Opérateurs de décalage et affectations abrégées au niveau des bits

Opérateurs de décalage et affectations abrégées au niveau des bits

Publié le 2024-11-05
Parcourir:155

1. Opérateurs de décalage de bits

  • >> : décaler vers la droite.
  • >>> : décalage vers la droite non signé (avec zéro).

2. Syntaxe générale des opérateurs de décalage
value value >> num-bits : déplace les bits de valeur vers la droite, en préservant le bit de signe.
value >>> num-bits : Déplace les bits de valeur vers la droite en insérant des zéros à gauche.

3. Maj gauche

  • Chaque décalage vers la gauche entraîne le déplacement de tous les bits de la valeur d'une position vers la gauche.
  • Un bit 0 est inséré à droite.
  • Effet : Multiplication de la valeur par 2 à chaque décalage.

4. Décaler vers la droite

  • Chaque décalage vers la droite déplace tous les bits d'une position vers la droite.
  • Le bit de signe est conservé : 0 pour les valeurs positives et 1 pour les valeurs négatives.
  • Effet : Diviser la valeur par 2 à chaque décalage, en arrondissant à l'inférieur.

5. Décaler vers la droite Aucun signe (>>>)

  • Aucune préservation des bits de signe ; insère 0 à gauche.
  • Utilisé dans les modèles de bits où la valeur est traitée comme un nombre non signé.

6. Le déplacement n'est pas rotationnel

  • Les bits décalés sont perdus.
  • Le décalage ne permet pas la récupération des bits décalés.

Exemple:
Maj gauche et droite
*ShiftDémo *

Attention lors du déplacement d'octets et de valeurs courtes

  • Java promeut automatiquement byte et short en int lors de l'évaluation d'une expression.

Exemple:

  • Déplacez une valeur d'octet négative vers la droite : lorsqu'ils sont promus en int, les bits de poids fort sont complétés par 1.
  • Lors d'un déplacement vers la droite avec un remplissage de zéros (>>>), cela peut causer des problèmes car les 24 premiers bits seront 1 avant que les zéros ne commencent à apparaître.

Affectations abrégées avec des opérateurs au niveau du bit

  • Tous les opérateurs binaires au niveau du bit ont une forme abrégée qui combine une affectation avec l'opération au niveau du bit.

Exemple

x = x ^ 127;
x ^= 127;

Os operadores de deslocamento e atribuições abreviadas bitwise

Déclaration de sortie Cet article est reproduit sur : https://dev.to/devsjavagirls/os-operadores-de-deslocamento-e-atribuicoes-abreviadas-bitwise-3nao?1 En cas de violation, veuillez contacter [email protected] pour supprimer il
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3