十进制转二进制、八进制、十六进制:
dec = int(input("输入数字:")) print("十进制数为:", dec) print("转换为二进制为:", bin(dec)) print("转换为八进制为:", oct(dec)) print("转换为十六进制为:", hex(dec))
二进制数转换成十进制数:二进制数从右向左每位数乘以2的次方(从0开始,从右向左依次+1),然后相加求和即可。
0101转成十进制为:1*20+0*21+1*22+0*23 =1+0+4+0=5
十进制数转换成二进制数:十进制数除2取余,商继续除2取余,直到商为0,所有余数逆顺即可。
如:12转换成二进制是:1100 12/2=6 ------ 0 第4位 6/2=3 ------ 0 第3位 3/2=1 ------ 1 第2位 1/2=0 ------ 1 第1位 12的二进制表示为:1100
位运算:
& :按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
|:按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。
^:按位异或运算符:当两对应的二进位相异时,结果为1
遇到一个问题:
ord('d')^ord('l')