python中取反是什么意思_20191031:Python取反运算详解
20191031:Python取反运算详解
取反运算:~3 == 4
1.对于数字 3 =======》转换为二进制表示为011
2.对011取反为100
3.为什么表示-4
a.计算机用补码表示负数,正数的补码为其本身,负数的补码为其反码+1,现在我们一家知道了100表示的是一个负数的补码,需要做的就是求出其原码,转换为十进制就是我们要求的结果
b.所以针对负数的补码求其原码具体过程如下:
i.如果补码最高位是0,则原码就是补码,如0110 的源码也是0110
ii.如果补码的最高位是1,则原码就是补码的反码+1,然后取相反数
011
001
-------------------------------------
100
以100为例:100的反码为011,011+1 ==100,100转换为十进制为4,取相反数为-4
===========================================================================================
反推:~-4 == 3
1.-4在内存中存储形式为100(存的是补码),根据前面b步骤表示负数补码求源码的过程,源码为反码011+1 = 100======》-4的源码为100
2.对-4的源码取反 011,011首位是0,表示正数,所以表示3
关键知识点:计算机在内存中存储数据是以补码的形式存储,所谓的取反运算是针对源码来计算的。
1.正数的,反码,补码为其本身
2.负数的,反码为其符号位不变,其他位取反
3.负数的,补码为其反码+1
4.负数的补码为其反码+1
===========================================================================================
总结:
计算机对一个数求反的过程
1.先求出其源码(因为内存中存的都是反码)
2.对源码进行取反运算
3.将取反以后的值转换为源码
4.将源码转换为十进制真值
python中取反是什么意思_20191031:Python取反运算详解相关推荐
- python six模块详解_对python中的six.moves模块的下载函数urlretrieve详解
实验环境:windows 7,anaconda 3(python 3.5),tensorflow(gpu/cpu) 函数介绍:所用函数为six.moves下的urllib中的函数,调用如下urllib ...
- python2.7除法_对python中的float除法和整除法的实例详解
从python2.2开始,便有两种除法运算符:"/"."//".两者最大区别在: python2.2前的版本和python2.2以后3.0以前的版本的默认情况下 ...
- python中怎么计数_浅谈python中统计计数的几种方法和Counter详解
1) 使用字典dict() 循环遍历出一个可迭代对象中的元素,如果字典没有该元素,那么就让该元素作为字典的键,并将该键赋值为1,如果存在就将该元素对应的值加1. lists = ['a','a','b ...
- python实现单例模式的几种方式_基于Python中单例模式的几种实现方式及优化详解...
单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...
- Python中常见的__init__.py是什么意思?详解Python import的方式和原理
Python中常见的__init__.py是什么意思?详解Python import的方式和原理 1 什么是模块化编程? 2 __init__.py文件的作用 3 Python如何import第三方库 ...
- python 读取图片转换为一维向量_对Python中一维向量和一维向量转置相乘的方法详解...
对Python中一维向量和一维向量转置相乘的方法详解 在Python中有时会碰到需要一个一维列向量(n*1)与另一个一维列向量(n*1)的转置(1*n)相乘,得到一个n*n的矩阵的情况.但是在pyth ...
- python什么意思k_对python中的*args与**kwgs的含义与作用详解
对python中的*args与**kwgs的含义与作用详解 在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数, ...
- args在python中什么意思_对python中的*args与**kwgs的含义与作用详解
在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数,用于元组,**kw是关键字参数 例如下面的代码 def fo ...
- 在python中等号前面与后面分别是什么意思-python中is与双等于号“==”的区别示例详解...
前言 在开始本文之前,首先要知道Python中对象包含的三个基本要素,分别是:id(身份标识).python type()(数据类型)和value(值).is和==都是对对象进行比较判断作用的,但对对 ...
- Python中匿名函数与内置高阶函数详解
大家好,从今天起早起Python将持续更新由小甜同学从 初学者的角度 学习Python的笔记,其特点就是全文大多由 新手易理解 的 代码与注释及动态演示 .刚入门的读者千万不要错过! 很多人学习pyt ...
最新文章
- 计算机没考好检讨,考试没考好检讨书范文(精选6篇)
- 双十一购物节,Nacos 1.4.0 + Go SDK 1.0.1发布
- 调参,注意神经网络处于哪种相态
- RabbitMQ负载均衡(2)——HAProxy
- 通俗彻底解读批处理的延迟变量
- PWN-PRACTICE-BUUCTF-1
- ArrayList类contains方法实现原理
- npm设置http代理
- 9600波特率每秒传送多少字节_arduino传送字符串json到python解析为字典数据
- 高考数据分析和读书感悟
- 关于微信退款出现错误代码:52的解决方法【转】
- Ffmpeg 视频教程 向视频中添加文字
- python 面向对象编程;(搬家具)
- Ubuntu系统安装时grub修复操作
- 快速将网页内的公式粘贴到文档中
- Web-app,一款简洁高效率绿色html编辑器-安卓软件
- python爬虫下载网站磁力链接
- Python渗透测试编程技术-拒绝服务攻击
- python将列表平分
- OpenCvSharp (C# OpenCV)实现纺织物缺陷检测->脏污、油渍、线条破损(详细步骤 + 源码)
热门文章
- 性能优化:内存管理之手动JIT编译
- Premiere使用教程(三)工具栏介绍
- 2022.03.04 学习笔记 IPCC相关
- MYSQL sql 高阶语句 (sequel)
- Enlight官方第三届“金融帝国杯”玩家游戏视频邀请赛《竞赛规则》(2022.12.23修订)
- 用C语言实现三子棋(含思路+完整代码)
- 断点续传灯珠SK6813/WS2813 5V内置IC-LED 智能指示灯珠
- XML与Json比较
- 四旋翼飞行器设计指南(原理、程序、电机资料)
- python for ArcGIS 绘制天津市板块地图