Python3 笔记:二进制的转换

十进制是逢十进一,二进制就是逢二进一。
十进制里最大的数字是9,二进制里最大的数字是1。

110100100010000100000100000010000000
10^0=110^1=1010^2=10010^3=100010^4=1000010^5=10000010^6=100000010^7=10000000
2^0=12^1=22^2=42^3=82^4=162^5=322^6=642^7=128

1、十进制转二进制的方法:

除2取余法:将数值不断除以2并记录余数,直到商为0。然后将余数按照相反的顺序排列,即可得到对应的二进制数。

十进制数 67 ——二进制数 1000011

在Python中可以用 bin() 来查看对应的二进制数。(binary 英 /ˈbaɪnəri/ n.二进制数)

num1 = 67
print(bin(num1))	# 运行结果:0b1000011
print(bin(2))	# 运行结果:0b10
print(bin(4))	# 运行结果:0b100

注意:bin()的参数不能输入字符串或者浮点型。输出结果会带着前缀"0b"。

2、二进制转十进制的方法:

乘2的幂次方:从二进制数最右边开始往左依次乘2的幂次方。最右边的乘2的0次方,右边数第二个乘2的1次方,以此类推,最后求和,就得到了对应的十进制数。

二进制数 11101 —— 十进制数 29

在Python中 int("x", 2) 可以把二进制转换为十进制。(integer 英 /ˈɪntɪdʒə(r)/ n.整数)

第1个参数是二进制数,记得要加上双引号。
第2个参数是2,表示第1个参数是二进制。

print(int("11101",2))	# 运行结果:29
print(bin(29))	# 运行结果:0b11101

3、其实十进制转二进制也可以采用2的幂次方这种方法:

先看小于且最接近的该数值的 2的幂次方是哪一个,然后减掉它,再看小于且最接近减掉后的结果的 2的幂次方是哪一个,再减掉它,重复到值为0不能再减。最后将运算中出现了2的幂次方的位置写1,没有出现的就写0。

比如:十进制数33,小于且最接近的是   2的5次方32,

再33-32=1,那就在2^5填1,2^0填1,其他没有出现的填0,就得到100001

2^7=1282^6=642^5=322^4=162^3=82^2=42^1=22^0=1
  100001

再比如:十进制数100,小于且最接近的是 2的6次方64,

再100-64=36, 小于36且最接近的是 2的5次方32,

然后100-64-32=4,4就是 2的2次方。所以是1100100

2^7=1282^6=642^5=322^4=162^3=82^2=42^1=22^0=1
 1100100

print(bin(33))	# 运行结果:0b100001
print(bin(100))	# 运行结果:0b1100100
print(int("100001",2))  # 运行结果:33
print(int("1100100",2)) # 运行结果:100

“世界上有10种人…第一种是懂二进制的,另一种是不懂二进制的。”

你现在是第一种人了吗?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/11548.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ES扩缩容

ES扩容 1.1 页面扩容ES1 1.2 拷贝插件及ssl文件 JSON [ec_admin@kde-offline3 ~]$ sudo rsync -avP /usr/kde_ec/2.3.6.6-1/elasticsearch1/plugins/* kde-offline6:/usr/kde_ec/2.3.6.6-1/elasticsearch1/plugins/ ;echo $? [ec_admin@kde-offline3 ~]$ sudo rsync -avP /us…

【Python探索之旅】初识Python

目录 发展史: 环境安装: 入门案例: 变量类型 标准数据类型 数字类型: 字符串: 全篇总结: 前言: Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设…

GEE数据集——东南亚区域油棕种种植分布(油棕榈树种植园的概率)数据集

森林数据伙伴关系围绕对全球商品驱动的森林砍伐、森林退化和恢复工作的全球监测,加强合作与应用。 世界各国政府和公司都承诺帮助制止砍伐森林和加快恢复,以避免气候变化带来的最坏影响,防止生物多样性丧失,保护森林对人类和自然…

TriCore:Interrupt 2

今天继续来看看 IR 模块。 名词缩写 缩写全称说明IRInterrupt Router SRService Request 包括: 1. External Resource 2. Internal Resource 3.SW(Software) SPService Privoder 包括: 1. CPU 2. DMA SRNService Request NodeS…

给第一次接触产品设计的写的

设计概念 设计原则 你可以参考以下的原则在每次评估一个网站时,建立excel,包含两个表格 表格1: 启发式评估 评估人员姓名 设备/浏览器/OS 网站URL 日期容易修复度 (ER) E0.修复需要最大的努力 E1.修复需要相当大的努力 E2.修复需要一些努…

FPGA+HDMI转换方案,用于网络直播切换直播画面,客户应用:直播,自媒体

FPGAHDMI转换方案,用于网络直播切换直播画面 客户应用:直播,自媒体 主要功能: 1.支持多路HDMI高清输入/输出 2.支持各路输入输出灵活切换 3.支持USB接口 4.支持网口 5.支持音频输出接口 6.支持serders

PHP单独项目启动演示

文章目录 phpstudy得到文件打开phpStudy.exe运行项目 Apache运行后又自动停止 phpstudy 得到文件 一般我们会得到这么一个项目文件,如果外层有“中文路径”,请剪切此内容作为项目根目录即可 打开phpStudy.exe 因为我又正常的编程环境和mysql&#x…

霍金《时间简史 A Brief History of Time》书后索引(I--L)

A–D部分见:霍金《时间简史 A Brief History of Time》书后索引(A–D) E–H部分见:霍金《时间简史 A Brief History of Time》书后索引(E–H) 图源:Wikipedia INDEX I Imaginary numbers Ima…

【C++要哮着学】初识C++,什么是C++?什么是命名空间?什么又是缺省函数?

文章目录 前言1、C简介1.1、什么是C1.2、C起源1.3、C发展 2、C关键字(C98)3、命名空间3.1、命名空间的定义及使用3.2、命名空间的嵌套3.3、命名空间的三种使用方式3.3.1、加命名空间名称及作用域限定符3.3.2、使用using将命名空间中某个成员引入3.3.3、使…

大舍传媒教你海外媒体广告投放的3个细分人群,“无需担忧!”

细分人群的重要性 在海外进行媒体广告投放时,理解和准确定位目标受众群体至关重要。细分人群可以帮助我们更好地了解他们的需求、兴趣和行为习惯,从而有效提升广告传播效果。本文将介绍大舍传媒推荐的三个海外细分人群,并为您提供解决方案&am…

Today At Apple 2024.05.12 上海静安 制作属于自己的表情符号

官网: https://www.apple.com/today/Apple 亚洲第一大商店:Apple 静安零售店现已在上海开幕如下预约课程:下载 Apple Store(不是app store),点击课程预约笔记:Today At Apple Notes果粉加群 &am…

【Web后端】Tomcat简介_安装_解决乱码_idea配置

1.1 简介 tomcat是在oracle公司的ISWDK(lavaServer Web DelevopmentKit)的基础上发展起来的一个优秀的开源的servlet容器tomcat使用java语言编写。运行稳定、可靠、效率高,可以和目前 主流web服务器一起工作(如IIS、Apache、 Nginx)tomcat是Apache软件基金会(Apach…

Today At Apple 2024.04.22 Iphone 入门 Mac 办公高4个效技巧

官网: https://www.apple.com/today/Apple 亚洲第一大商店:Apple 静安零售店现已在上海开幕如下预约课程:下载 Apple Store(不是app store),点击课程预约笔记:Today At Apple Notes果粉加群 &am…

软件测试面试题100题

一、测试理论 3.1 你们原来项目的测试流程是怎么样的? 我们的测试流程主要有三个阶段:需求了解分析、测试准备、测试执行。 1、需求了解分析阶段 我们的 SE 会把需求文档给我们自己先去了解一到两天这样,之后我们会有一个需求澄清会议, …

微信小程序之转盘抽奖

1. 实现效果 2. 实现过程 话不多说&#xff0c;直接上代码 /**index.wxml */ <view class"title">旋转大转盘</view> <view class"rote-box fcc"><view class"box fcc"><image class"bg" src"/stat…

cookie、session、token、表单、json、jsonp、websocket、ajax都是什么

前后端数据交互的几种方式 1.cookie Cookie是服务器保存在客户端的一小段数据&#xff0c;&#xff08;使用Cookie的前提是客户端浏览器允许使用Cookie并对此做出相应的设置。&#xff09; cookie是一种存储在用户计算机上的小型数据文件&#xff0c;常用于在web应用程序中跟…

SpringCloud2024最新版链路追踪教程micrometer+zipkin

本文基于B站尚硅谷2024版springcloud教学视频&#xff0c;主要用于自己学习记录以及分享技术&#xff0c;侵权私删 自己本机环境信息&#xff1a; jdk&#xff1a;17.0.10springboot&#xff1a;3.2.0springcloud&#xff1a;2023.0.0 micrometer 之前行业内使用的分布式链路…

宝塔面板Docker+Uwsgi+Nginx+SSL部署Django项目

这次为大家带来的是从零开始搭建一个django项目并将它部署到linux服务器上。大家可以按照我的步骤一步步操作&#xff0c;最终可以完成部署。 步骤1&#xff1a;在某个文件夹中创建一个django项目 安装django pip install django创建一个django项目将其命名为djangoProject …

Ubuntu系统搭建Tipask开源问答系统并发布公网分享好友远程访问

文章目录 1. 前言2.Tipask网站搭建2.1 Tipask网站下载和安装2.2 Tipask网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar临时数据隧道3.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;3.3 Cpolar稳定隧道&#xff08;本地设置&#xff09; 4. 公网访问测试5. 结语…

STM32——TIMER(定时器)篇

技术笔记&#xff01; 1. 定时器概述&#xff08;了解&#xff09; 1.1 软件定时器原理 使用纯软件&#xff08;CPU死等&#xff09;的方式实现定时&#xff08;延时&#xff09;功能 缺点&#xff1a;1. 延时不准确 2. CPU死等。 1.2 定时器定时原理 1.…