Python求一个数对应二进制最低位为1对应的数字lowbit
来源:互联网 发布:凯立德自适应端口文件 编辑:程序博客网 时间:2024/05/21 23:10
要求一个数对应二进制最低位为1对应的数字lowbit,如lowbit(5),5的二进制位101,对应的结果就,001即1,lowbit(4),4的二进制位100,对应的结果就,100即4。
由于计算机采用二进制补码作为数学运算,所以可以用x&-x来求得
由于负数的补码就是原码取反加1,所以这样按位或可以得到从右侧起第一个
为1的数。
举例:
x=1,原码0001,x的补码就是0001,(以4位表示)
-x=-1,原码1001,-x的补码就是1111。
所以x&-x = 1 即是所求结果
附上python代码
def lowbit(x): return x&-x
阅读全文
0 0
- Python求一个数对应二进制最低位为1对应的数字lowbit
- 给定一个十进制数,转换为对应的二进制数
- 求两个数的二进制数的对应位有多少位不同?
- 求一个整数对应的二进制中的1的个数(位操作)
- 用循环的方法求一个十进制数对应二进制中含有1的个数
- 求一个给定的数对应二进制数里有多少个1
- 对一个二进制的每位进行0和1反转,求反转后的二进制所对应的十进制数
- 用宏实现将一个十进制数对应的二进制数的奇偶位交换
- 求一个数的二进制逆序之后所对应的数
- 第二周作业02 -- 随机生成一个n位的二进制数对应的长整数
- 求N!的二进制表示最低位的1的位置(从右向左数)
- python求解给定一个整数N,求N!末尾有多少个0,求N!的二进制中最低位1的位置
- 求n的阶层二进制最低位1的位置
- 求N!二进制最低位1的位置
- 问题:十进制整数,计算对应的二进制数包含多少个1,用位操作。
- 十进制整数,计算对应的二进制数包含多少个1,用位操作
- 求一个32位二进制数中的1的个数
- 位运算--求一个 数二进制中1的个数
- unity & php上传文件
- Deep Learning Exercise 1-3
- 神奇的Timer
- 一个时代的终结微软高层认Windows手机业务不再是重点
- 基于force布局的map
- Python求一个数对应二进制最低位为1对应的数字lowbit
- java学习路线图
- vue不支持ie8以下 原因?
- Linux命令缩写(转)
- 2.main函数
- 人工智能PK人类?这部电影超前地预见了人类社会的终极形态
- PYPL 10 月 IDE 指数榜:Eclipse 反超 Visual Studio
- 未来五年最具前景的一门编程语言是什么?
- 神经网络中的过拟合、泛化能力、L2正则化