1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Python 位运算及二进制基础知识

Python 位运算及二进制基础知识

时间:2021-11-15 08:18:15

相关推荐

Python 位运算及二进制基础知识

来补点基础知识,这篇讲的是位运算

二进制实际上就是用10进制的数的每一位数字的2的幂数

来看例子:

然后再python的操作中,只要在数字前面加上0b的字符,就可以用二进制来表示十进制数了。

随后,在python的函数中,有一个bin()函数,直接可以将输入的十进制数,转换成二进制,但是,输出的格式是str,不是number!!!

接着我们来讲下如何使用位运算符,具体如下图,你可以认为是整个数字排列向左或者向右挪动了几个位置

接着,我们来看一下位运算中的逻辑运算

首先来讲AND运算,什么意思呢,就是,比较2个数字,只有在这2个数字的位数上,2者都是1的情况下,才能继承1,不然则得0

从下面的例子可以看到,只有2者都是0的位数,AND运算后,才能继承0,不然为1.

所以AND运算出来的数,只会是小于或者等于进行AND运算的这2个数字.

接着我们来看下OR运算

这个就以此类推了,位数中,只要有一位是1,那就继承1,两者都为0的时候才是0.

接着是异或运算XOR,这个是什么意思呢?就是,只有当2个运算数字的位数上,有一者为0的时候,才继承1,其余皆生成0,即使是2者都为1,也是0,两者都为0,也是0.

这章节内容有点多啊,下面继续讲,位掩码功能

位掩码什么功能呢?他可以检测指定位数的bit是on还是off,比如他用一个0b0100的数字和一个目标数字去做AND运算,以期检测这个目标数字从右往左第三位是否是on的状态,如果输出结果是大于0的,那么这个位置肯定是1.

还有功能就是可以翻转位数的on或者off

然后第三张图片,他是通过OR运算,用0去或运算目标数字的位数,来期望检测目标数位是on还是off的结果。

后面第四张图的异或XOR运算,也是此意。

第五张照片,是通过位移的方法,来翻转位数,通过左移9位,来将第10位数翻转到on.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。