关于十进制数取异或运算原理(Python实现)
2018-01-17 15:10
295 查看
案例一
运行结果为:c=5,d=2,这是怎么计算的呢?首先,a=10,转换为二进制是0101,b=15,转换为二进制是1111,取异或为0101,它的十进制是5,所以c=5,其中异或结果“1”的位数为2,也就是不相同的位数是2,即:
10^15=5
案例二
运行结果为:k=11,l=2,这是怎么计算的呢?首先,i=0b1101,j=0b0110,(0b表示二进制)取异或为1011,它的十进制是11,所以k=11,其中异或结果“1”的位数为3,也就是不相同的位数是3,即:
0b1101^0b0110=11
a=10 b=15 c=a^b d=bin(c).count("1") print(c) print(d)
运行结果为:c=5,d=2,这是怎么计算的呢?首先,a=10,转换为二进制是0101,b=15,转换为二进制是1111,取异或为0101,它的十进制是5,所以c=5,其中异或结果“1”的位数为2,也就是不相同的位数是2,即:
10^15=5
案例二
i=0b1101 j=0b0110 k=i^j l=bin(k).count("1") print(k) print(l)
运行结果为:k=11,l=2,这是怎么计算的呢?首先,i=0b1101,j=0b0110,(0b表示二进制)取异或为1011,它的十进制是11,所以k=11,其中异或结果“1”的位数为3,也就是不相同的位数是3,即:
0b1101^0b0110=11
相关文章推荐
- 运用异或运算实现两个数不通过中间变量交换值的原理分析
- 训练三层BP神经网络实现异或运算 Python 代码实现
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- 关于字符串比较的一点讨论---strcmp与memcmp的效率及实现原理
- COM原理与应用中关于聚合实现的纪要
- python实现bitmap原理
- 运算表达式类的原理及其实现
- 关于数据增量抽取的模拟实现——原理
- 关于数据事实表汇总的模拟实现——原理
- 关于数据增量抽取的模拟实现——原理
- 关于xmpp协议的注册模块的实现原理(gloox库)
- 关于Python中一种回调方式的实现
- 关于NTLM认证的python和.NET实现
- 关于简单操作系统原理的实现
- 近期准备写一系列关于使用python实现常用算法的文章
- MSDN上关于sqlserver 万能分页原理实现的一个致命错误
- QT中关于信号与槽机制的实现原理
- 基于逻辑运算的简单权限系统(原理,设计,实现) VBS 版
- 关于数据增量抽取的模拟实现——原理
- 关于SOA的思考4:SOA平台的实现原理