J'ai lu sur bits les opérateurs en Objective-C dans Kochan du livre, "la Programmation en Objective-C".
Je suis TRÈS confus au sujet de cette partie, même si j'ai vraiment compris la plupart des tout le reste présenté à moi à ce jour.
Voici une citation du livre:
Le niveau du Bit ET de l'Opérateur
Au niveau du bit ANDing est fréquemment utilisé pour les opérations de masquage. C'est cet opérateur peut facilement être utilisé pour définir les bits d'un élément de données à 0. Par exemple, l'instruction
w3 = w1 & 3;
attribue à w3, la valeur de w1 bit à bit ANDed avec la constante 3. Cela a le même ffect de l'établissement de tous les bits de w, autres que la droite deux bits à 0 et la préservation de la droite à deux bits à partir de w1.
Comme avec tous les opérateurs arithmétiques binaires en C, le binaire, les opérateurs peuvent également être utilisés comme opérateurs d'affectation par l'ajout d'un signe égal. La déclaration
word &= 15;
par conséquent, on effectue la même fonction que les suivantes:
word = word & 15;
En outre, il a pour effet de créer toutes les mais la la plus à droite, quatre bits du mot à 0. Lors de l'utilisation de constantes dans l'exécution des opérations bit à bit, il est généralement plus commode d'exprimer les constantes dans les deux octal ou hexadécimal.
OK, donc c'est ce que j'essaie de comprendre. Maintenant, je suis extrêmement confus avec à peu près la totalité de ce concept et je suis juste à la recherche d'un peu de clarification si quelqu'un est prêt à m'aider sur ce point.
Lorsque le livre des références "réglage de tous les bits" maintenant, tous les bits.. c'est Quoi exactement un peu. N'est-ce pas juste un 0 ou un 1 en 2ème base, en d'autres termes, binaire?
Si oui, pourquoi, dans le premier exemple, sont tous les bits à l'exception de la "droite 2" à 0? Est-il 2 parce que c'est 3 - 1, en prenant 3 à partir de notre constante?
Merci!