Comment utiliser le bit à bit et opérateur dans la programmation de c

Comme l'opérateur OR dans la programmation en C, l'opérateur AND au niveau du bit, , Affecte également bits dans un multiplet. Contrairement OU, qui définit les bits, les masques et le fonctionnement bit valeurs. Il est plus facile de vous montrer un exemple de programme que de décrire pleinement ce masquer moyens.

MISE Putchar () TRAVAILLER

main () {int ch-printf ("Appuyez sur Entrée:") #include int -getchar () - = CH 'H'-putchar (CH) -CH =' Je putchar (ch) -putchar ('!' ) -retour (0) -}

Exercice 1: Modifiez le code source à partir Mettre putchar () au travail de sorte qu'une opération ET a lieu à la place d'un OU binaire. Changer le jeu constant dans la ligne 2 à la valeur 223. Changer le | (OU binaire) à la ligne 12 à la (ET bit à bit). Et enfin, modifiez l'instruction printf () à la ligne 15, de sorte que le | est remplacé par le personnage. Construire et exécuter.




Voici la sortie pour la valeur 255 (tous les bits):

Tapez une valeur entre 0 et 255: 25511111111 255 11011111 223 = 11011111 223

Le bit à bit masques sur le sixième bit, provoquant sa valeur pour être remis à 0 dans le calcul final. Pas d'autres bits sont affectés. Pour voir d'autres exemples, essayez les valeurs 170 et 85. Regardez comment les bits tombent à travers le masque.

CARACTERE VARIABLE MADNESS

#include int main () {char a, b, c, da = 'W'-b = a + 24 c = b + 8 = d ' n'-printf ("% c% c% c% c ", a, b, c, d) -la réponse (0) -}

Exercice 2: Modifiez le code source à partir de Caractère Madness variable afin qu'une opération ET a lieu à la place d'un OU binaire. Changez la ligne 9, de sorte que la déclaration printf () invite: “ Tapez du texte: ” Changez la ligne 14, en remplacement | avec et le remplacement de la valeur de 32 à 223. construire et exécuter.

Tout comme le OU binaire définit le sixième bit pour convertir le texte en majuscules en minuscules, le masquage de la sixième bit avec un ET bit à bit convertit le texte en minuscules en majuscules. Bien sûr, les binaires ainsi que des masques sur le caractère espace, changeant sa valeur à 0, ce qui est pas un caractère affichable.

Exercice 3: Modifier votre solution pour l'exercice 2 de sorte que seules les lettres de l'alphabet sont touchés.


» » » » Comment utiliser le bit à bit et opérateur dans la programmation de c