Possible Duplicate:
Absolute Beginner's Guide to Bit Shifting?
anyone can explain me that operator << or >>
[::-1] means: Start at the end (the minus does that for you), end when nothing's left and walk backwards by 1.
Python bitwise left shift operator shifts the left operand bits towards the left side for the given number of times in the right operand. In simple terms, the binary number is appended with 0s at the end.
The bitwise shift operators are the right-shift operator ( >> ), which moves the bits of an integer or enumeration type expression to the right, and the left-shift operator ( << ), which moves the bits to the left.
The <<
and >>
operators are bitshift operators. x << 1
shifts all the bits in x
up to the next most significant bit, effectively multiplying by 2. More generally, x << n
shifts the bits up n positions. To understand how this operation works it is easiest to look at the binary representation:
3 0000011 = 3
3 << 1 0000110 = 6
3 << 2 0001100 = 12
3 << 3 0011000 = 24
Similarly the >>
operator shifts the bits down:
58 0111010 = 58
58 >> 1 0011101 = 29
58 >> 2 0001110 = 14
58 >> 3 0000111 = 7
58 >> 4 0000011 = 3
58 >> 5 0000001 = 1
58 >> 6 0000000 = 0
3, in binary, is 11
and shifted to left one bit is 110
, or 6 in decimal.
Think of a << b
as a * (2 ** b)
>>
is for right-shifting. Think of a >> b
as a // (2 ** b)
It's a shift operator.
http://docs.python.org/reference/expressions.html#shifting-operations
It's a bit shift, using a shifting operation.
Say you have a number, and looking at the lowest bits, you have 3:
0 0 1 1
If you shift it, you'll get 6, or:
0 1 1 0
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With