I have the small code, which is converting the integer to 10 bit binary and forming it as integer:
a = 2251
binary = bin(int(a))[2:].zfill(15)
print binary
it will give result as:
100011001011
and after that I want to remove the last four digits from 100011001011 and put zeros instead of that, means my final answer should be:
100011000000
please suggest if any good ideas...
You can do this with some simple bit shifting:
>>> a = 2251
>>> a = (a >> 4) << 4 # <--
>>> print format(a, 'b')
100011000000
To demonstrate what's going on, imagine that a had the binary representation 1111 1111:
a == 11111111 a >> 4 == 00001111 (a >> 4) << 4 == 11110000
You can use a simple bitwise operation:
>>> a = 2251
>>> a = a & ~0b1111
>>> print format(a, 'b')
100011000000
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