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

二进制实际上就是用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.

Python 位运算及二进制基础知识相关推荐

  1. c语言10以内位运算,C语言基础知识--位运算

    1.原码,反码,补码: (1)在n位的机器数中,最高位为符号位,该位为零表示为正,为一表示为负:其余n-1位为数值位,各位的值可为零或一.当真值为正时,原码.反码.补码数值位 完全相同:当真值为负时, ...

  2. 小猪的Python学习之旅 —— 1.基础知识储备

    小猪的Python学习之旅 -- 1.基础知识储备 引言: (文章比较长,建议看目录按需学习-) 以前刚学编程的时候就对Python略有耳闻,不过学校只有C,C++,Java,C#. 和PHP有句&q ...

  3. 由Python位运算到原码反码补码

    采用书籍Python核心编程(第二版),人民邮电出版社,2008年7月第1版.本书以Python2.5为主,但笔记主要以Python3.6为主. 一.Python位运算操作符 Python支持标准位运 ...

  4. 计算机2进制基础知识,《二进制基础知识》PPT课件.ppt

    [规范化撤机流程 二进制基础知识 一.计算机中的各种数制与进位计数制 二.各进制之间的相互转化 三.计算机中数据及编码 四.二进制数的计算机内部表示方法 五.二进制的算术.逻辑运算 一.计算机中的各种 ...

  5. python左移右移位运算_荐Python : 位运算 —— 与、或、异或、左移、右移

    Python : 位运算 -- 与.或.异或.左移.右移 位运算 位运算是把数字用 二进制 表示之后,对每一位上 0 或者 1 的运算.位运算共有 5 种运算:与.或.异或.左移.右移. 与.或.异或 ...

  6. Python 位运算符号

    Python 位运算符号 文章链接 posted on 2018-06-23 16:32 luoganttcc 阅读(...) 评论(...) 编辑 收藏

  7. Python学习--最完整的基础知识大全

    ##Python学习–最完整的基础知识大全 关于python的基础知识学习,网上有很多资料,今天我就把我收藏的整理一下分享给大家! #####菜鸟教程python2 #####菜鸟教程python3 ...

  8. Python系列 之 matplotlib库 基础知识

    Python系列 之 matplotlib库 基础知识学习 Pyplot 简单示例 中文显示问题 注册全局字体 font_manager.FontProperties注册字体 Figure Figur ...

  9. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

最新文章

  1. 在CentOS 6.6 64bit上安装Python 3.5.0
  2. RHEL5下构建LVS负载均衡系统详解(二)
  3. sql2008“备份集中的数据库备份与现有的xx数据库不同”解决方法
  4. ubuntu下wps不能输入中文
  5. jQuery : ddSlick 自定义select下拉框 custom drop down with images and description.
  6. 【XMPP】XMPP协议之原理篇
  7. RhinoMock异常ExpectationViolationException以及解决
  8. 测试管理工具QC第一篇-QC安装步骤(史上最详细的图解过程)-第一篇
  9. 微型计算机远程编程微软,用微软的云计算来远程管理自己的电脑
  10. datatable高效写入mysql_如何将DataTable批量写入数据库
  11. python在电力系统中的应用_PyPSA在电力系统潮流计算中的应用
  12. Webstorm中html无Vue语法提示
  13. 如何查找hp计算机的生产日期,旗捷支招 | 如何识别惠普打印机的生产日期
  14. C++关键字(static/register/atuo/extern/volatile/const/inline/define/typedef)
  15. Spring Boot application properties或application yml相关配置
  16. 【将门创投】这12张图生动地告诉你,深度学习中的卷积网络是怎么一回事?...
  17. Vue+OpenLayers学习系列(九)Vue+OpenLayers小案例(长度测量、面积测量、坐标定位、坐标获取)
  18. SpringBoot下结合使用Cacheable、CacheEvict和Scheduled注解轻松实现可过期本地缓存
  19. SoapUI的一些基本设置
  20. linux dd命令

热门文章

  1. 华为一碰传nfc_从Huawei Share 3.0的“一碰传”来看NFC的三大工作模式
  2. 实用计算机技术ps,2012年职称计算机考试photoshop常用技巧(1)
  3. 个人简历管理系统(2)-数据库连接
  4. 【xinfanqie】迎风漫画win7主题_8.3
  5. ASBSO:具有灵活搜索长度和基于记忆选择的改进头脑风暴优化
  6. 电脑自带的html编辑软件在哪儿,画图板在哪里 电脑里Window的画图工具在哪里
  7. 抄袭哥与流氓哥之间的世纪大战
  8. 百度地图第二代车道级导航“亚米级”高精度定位的背后
  9. 批量生成含二维码和条形码的产品标签
  10. 苹果a7处理器_苹果A系芯片到底强在哪里?它是凭什么超过高通骁龙和华为的?...