Masquage de bits en C ++

Masquage de bits en C ++
Le masquage de bits est un processus utilisé pour accéder à un bit spécifique dans les octets de données. Ce phénomène est utilisé lorsque vous effectuez le processus d'itération. Un massasque à bip. Ces éléments du masque peuvent être définis ou ne peuvent pas être. Il y a des opérateurs à bit pour créer ou basculer les bits. Ces opérateurs sont utilisés pour allumer le bit Off ou vice-versa.

Pour utiliser les programmes C ++ pour les exécuter sur Linux, vous devez avoir le fichier Ubuntu configuré et en cours d'exécution. De plus, l'utilisateur doit avoir une certaine connaissance de la langue C ++. Les codes source C ++ sont écrits dans l'éditeur de texte. Alors que pour le processus d'exécution, utilisez le terminal Ubuntu.

Un massasque à bijou est également un masque simple qui est une séquence de n bits. Il code le sous-ensemble de la collection. L'élément «i» est présent dans le sous-ensemble du bit «ith» est défini dans le masque. Pour l'ensemble des éléments ayant des octets nième, il y a des chances d'avoir un masque 2N correspondant à un sous-ensemble.

Pourquoi le massacing est utilisé

Le processus de massariat stocke différentes valeurs dans le même ensemble de nombres. Par exemple, considérez un ensemble dans lequel s = 1, 2, 5, 8, 6 et 7. Pour représenter l'ensemble de 2, 5, 7, nous pouvons utiliser n'importe quel bitmask 010110.

Les opérations effectuées par les bitmaps sont les suivantes:

Réglez le bit «ith»
Cela se fait en considérant une valeur «x». Nous pouvons effectuer x | = x<

Décoller le bit «ith»
Pour un non-set le bit, il doit y avoir un peu qui est déjà défini par l'utilisateur ou par défaut. De sorte que ce bit particulier peut être décollé facilement. Donc pour cela, nous utilisons les opérateurs x & = ~ (x <

Basculer un peu
Ceci est un processus dans lequel nous utilisons un opérateur x ^ = x<

En mots simples, si vous voulez régler un peu, cela signifie que si le i-th bit est 0, il est donc réglé sur 1. Et s'il est déjà 1, laissez-le sans aucune modification. De même, dans le cas d'un peu d'autorisation, si le i-th bit est 1, alors il doit être effacé à 0. Et s'il est déjà 0 maintenant, ne le changez pas; Laissez-le dans la façon dont il est déjà. Où que ce soit pour basculer un peu, si le i-th bit est 1, changez maintenant ce bit en 0. Et s'il est déjà 0, maintenant vous devez revenir à 1.

Exemple de masquage des bits

Un concept de base de masquage des bits est essayé ici pour expliquer le fonctionnement du masquage des bits. Cet exemple implique les trois opérations de masquage de bits décrites ci-dessus dans ce guide.

En commençant maintenant par le flux d'entrée et de sortie pour impliquer la lecture et l'écriture dans le fichier.

#inclure

Nous avons d'abord sauté au programme principal du code source afin que le code devienne plus simple et bien organisé. De plus, il deviendra plus compréhensif pour les nouveaux dans le domaine de la programmation. Tout ce programme est un système utilisateur-interactif. Qui nécessite une implication des utilisateurs à chaque étape du système de course. La première étape du programme principal est que nous demandons le numéro sur les opérations appliquées de l'utilisateur. Avant de demander, une variable est définie pour accepter la valeur saisie par l'utilisateur.

Lorsque l'utilisateur entre le numéro, il subit de nombreux processus, comme une boucle de temps est utilisée. Cette boucle assure la disponibilité des chiffres à chaque fois que le programme est exécuté. Lorsque le numéro est entré, le système affiche 3 options à l'utilisateur, si l'utilisateur souhaite définir un massac. Et à la fin, un utilisateur est invité à en sélectionner l'un d'eux. Pour naviguer dans toutes ces opérations, nous devons avoir une telle logique qui ne sélectionnera qu'une seule option dans laquelle l'utilisateur entre. Tandis que toutes les opérations restent inactives à ce moment-là.

Nous utilisons donc une instruction Switch ici. Lorsque l'utilisateur entre son choix, ceci est stocké dans une variable, puis sur cette variable, nous effectuons une instruction Switch. Chaque ligne de l'instruction Switch contient un appel de fonction de chaque option. Quelle que soit l'option que l'utilisateur sélectionne, le système exécutera ce programme particulier pour l'option. Nous utilisons une instruction BREAK avec chaque option de l'instruction Switch. Parce qu'une fois une option terminée, vous devez empêcher le programme de poursuivre automatiquement l'exécution jusqu'à ce qu'il soit invité à exécuter le programme.

Considérez maintenant la première option; La première fonction consiste à définir un masque. Il contient la variable pour stocker le numéro entré par l'utilisateur. Ce numéro subira une opération arithmétique pour fournir la valeur qui est avant, puis après la valeur bit.

X | x <

Lorsque cette opération est complètement exécutée, la valeur après avoir parcouru les opérations est à nouveau traitée, puis la valeur est affichée.

L'option suivante consiste à décrocher le masque déjà créé ou le nouveau masque. Cela effacera également la première et la prochaine valeur la plus importante du bit.

X & = ~ (x <

Nous avons expliqué chaque fonction séparément pour rendre le concept clair pour l'utilisateur. Cela fournira également la valeur précédente et prochaine du bitmask.

X ^ = x <

Après avoir écrit le code, enregistrez-le dans le fichier, puis enregistrez le fichier avec une extension de '.C '. Pour exécuter le code, nous avons besoin d'un compilateur «G ++» qui compilera le code. 'bit. C 'est le nom du fichier.

$ g ++ -o bit.c
$./bit

Lorsque nous exécutons le code, le contrôle se trouve dans le programme principal lorsque vous sélectionnez l'option de la fonction, puis selon la fonction, l'appel de fonction spécifique est effectué et le contrôle est transmis à cette fonction particulière. Par exemple, selon l'image, nous entrons d'abord le numéro, puis sélectionnons l'option.

Nous sélectionnerons les trois options en termes de ligne. Tout d'abord, nous avons sélectionné la première option pour définir le Bitmask. Selon la fonction, un peu avant et après le bit actuel s'affiche au hasard lorsque l'exécution est terminée pour la fonction.

Encore une fois, les options sont affichées. Maintenant, nous voulons inférieur la position «3». Là encore, avant et après la compensation, la valeur est affichée.

Maintenant encore, lorsque nous voyons la liste des options, sélectionnez la dernière option, l'option bascule. Entrez le bit que vous souhaitez basculer. Les bascules précédentes puis les valeurs de bascule après seront affichées.

Ce processus se poursuivra jusqu'à ce que vous continuiez à entrer dans les valeurs des options. Si vous souhaitez quitter le système, appuyez sur «Ctrl + C».

Conclusion

Le processus de masquage des bits est favorable aux processus d'itération. Nous avons utilisé un bref exemple pour expliquer le processus de définition, non pas le masque et basculer le bit. Nous pouvons également modifier l'exemple mentionné ci-dessus en fonction de nos besoins de programme. Nous espérons que cet article vous aidera à comprendre le processus de masquage des bits.