Stap 5: Booleaanse operaties met gebruikmaking van de Python - Operator bitsgewijze AND
http://Playground.Arduino.CC/code/BitMath
Bitsgewijs en operaties
Raadpleeg de sectie over Bitwise en operator.
Typ in de volgende expressies:
>>> 0 & 0
0
>>> 0 & 1
0
>>> 1 & 0
0
>>> 1 & 1
1
>>>
Zoals u ziet, dat hebben we dezelfde antwoorden ontvangen zoals weergegeven in het Bitwise en voorbeeld.
Wat hebben we heet een waarheidstabel voor de Bitwise en operator.
We hebben elk mogelijk antwoord dat we ontvangen kunnen, uitvoeren van de operator bitsgewijze AND weergegeven.
Laten we doorgaan met de Bitwise en voorbeelden:
Typ het volgende achter de >>> prompt:
>>> een = 92
>>> b = 101
>>> bin(a)
'0b1011100'
>>> bin(b)
'0b1100101'
>>> een & b
68
>>> bin(a & b)
'0b1000100'
>>>
Hier hebben we toegewezen waarde 92 aan variabele een en een waarde van 101 naar variabele b. Wij vervolgens geconverteerd met de waarden van een en b naar een binair getal om de resultaten van de bit-gewijze AND-bewerking gemakkelijk te zien.
Wij vervolgens de bitsgewijze AND-bewerking uitgevoerd door te typen een & b, dit heeft als resultaat een waarde van 68. Maar we willen visualiseren het antwoord in binary, dus hebben we getypt de bin(a & b) functie.
We kunnen nu gemakkelijk visualiseren de bitsgewijze AND-bewerking zonder te halen onze aandacht van de binaire patronen van 92 en 101 de wiskunde te doen kijken.
Laten we doorgaan de met de bitsgewijze AND-voorbeelden:
Wat gebruik je de bitsgewijze AND-operator voor in de programmering of bits bonzen? Het wordt gebruikt om een van de bits-waarden uit een byte. (acht bits)
Laat zeggen we willen uitpakken de waarde van de minst significante bits van het binaire getal 101, de juiste meeste 1 is het minste significante beetje.
Typ het volgende achter de >>> prompt:
X = 5
>>> bin(x)
'0b101'
>>> y = x & 1
>>> bin(y)
'0b1'
Als we uitpakken van de tweede minst significante bits van de waarde van 101 willen, zou de tweede minst significante bit van 101 de 0.
Typ het volgende achter de >>> prompt:
>>> y = x & 2
>>> bin(y)
'0b0'
>>>
Wees voorzichtig, verschillende processors minst significante bits standpunt anders bepalen. Sommige processors gebruiken links meeste bit als de minst significante bits positie en sommige processors gebruiken de juiste positie voor het meeste bit als de minst significante bits positie.