Manipulation de bits dans Go : définition et effacement de bits individuels
La manipulation de bits est essentielle lorsque l'on travaille avec la représentation des données sous-jacentes dans les systèmes informatiques. Dans Go, vous pouvez manipuler des bits individuels d'un entier pour obtenir des résultats spécifiques. Voici comment définir et effacer des bits dans Go :
Définition d'un bit
Pour définir un bit dans un entier n en position pos, utilisez la fonction suivante :
// Sets the bit at pos in the integer n. func setBit(n int, pos uint) int { // Shift 1 the specified number of spaces. bit := 1 << pos // OR the resulting bit mask with n. return n | bit }
Effacer un bit
Pour effacer un bit en position pos en n, utilisez cette fonction :
// Clears the bit at pos in n. func clearBit(n int, pos uint) int { // Shift 1 the specified number of spaces. bit := 1 << pos // Flip every bit in the mask using XOR operator. mask := ^bit // AND mask with n to unset the target bit. return n & mask }
Vérification si un bit est défini
Vous pouvez également vérifier si un bit est défini à une position particulière en utilisant cette fonction :
func hasBit(n int, pos uint) bool { // Shift 1 the specified number of spaces. bit := 1 << pos // AND the resulting bit mask with n. val := n & bit // Return true if val is greater than 0. return (val > 0) }
Avec ces fonctions, vous pouvez effectuer des manipulations de bits précises dans vos programmes Go.
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!