Chiriri's blog Chiriri's blog
首页
  • Java

    • JavaSE
    • JavaEE
    • 设计模式
  • Python

    • Python
    • Python模块
    • 机器学习
  • Golang

    • Golang
    • gRPC
  • 服务器

    • Linux
    • MySQL
    • NoSQL
    • Kubernetes
  • 项目

    • 传智健康
    • 畅购商城
  • Hadoop生态

    • Hadoop
    • Zookeeper
    • Hive
    • Flume
    • Kafka
    • Azkaban
    • Hbase
    • Scala
    • Spark
    • Flink
  • 大数据项目

    • 离线数仓
  • 青训营

    • 第四届青训营
  • HTML

    • HTML
    • JavaScript
  • Vue

    • Vue2
    • TypeScript
    • Vue3
    • Uni-APP
  • 数据结构与算法
  • C语言
  • 考研数据结构
  • 计算机组成原理
  • 计算机操作系统
  • Java基础

    • Java基础
    • Java集合
    • JUC
    • JVM
  • 框架

    • Spring
    • Dubbo
    • Spring Cloud
  • 数据库

    • MySQL
    • Redis
    • Elasticesearch
  • 消息队列

    • RabbitMQ
    • RocketMQ
  • 408

    • 计算机网络
    • 操作系统
    • 算法
  • 分类
  • 标签
  • 归档
  • 导航站
GitHub (opens new window)

Iekr

苦逼后端开发
首页
  • Java

    • JavaSE
    • JavaEE
    • 设计模式
  • Python

    • Python
    • Python模块
    • 机器学习
  • Golang

    • Golang
    • gRPC
  • 服务器

    • Linux
    • MySQL
    • NoSQL
    • Kubernetes
  • 项目

    • 传智健康
    • 畅购商城
  • Hadoop生态

    • Hadoop
    • Zookeeper
    • Hive
    • Flume
    • Kafka
    • Azkaban
    • Hbase
    • Scala
    • Spark
    • Flink
  • 大数据项目

    • 离线数仓
  • 青训营

    • 第四届青训营
  • HTML

    • HTML
    • JavaScript
  • Vue

    • Vue2
    • TypeScript
    • Vue3
    • Uni-APP
  • 数据结构与算法
  • C语言
  • 考研数据结构
  • 计算机组成原理
  • 计算机操作系统
  • Java基础

    • Java基础
    • Java集合
    • JUC
    • JVM
  • 框架

    • Spring
    • Dubbo
    • Spring Cloud
  • 数据库

    • MySQL
    • Redis
    • Elasticesearch
  • 消息队列

    • RabbitMQ
    • RocketMQ
  • 408

    • 计算机网络
    • 操作系统
    • 算法
  • 分类
  • 标签
  • 归档
  • 导航站
GitHub (opens new window)
  • JavaSE

  • JavaEE

  • Linux

  • MySQL

  • NoSQL

  • Python

    • Python基础
    • 变量以及数据类型
    • 标识符
    • 输入输出
    • 进制
      • 二进制 八进制 十进制 十六进制
      • 进制转换
        • 二进制转八进制
      • 二进制转十六进制
      • 二进制转十进制
      • 十进制转二进制
      • bin、oct、hex内置函数
    • 数据类型的转换
    • 算术运算符
    • 分割
    • 一些算术小技巧
    • 运算符
    • 流程控制
    • 循环
  • Python模块

  • 机器学习

  • 设计模式

  • 传智健康

  • 畅购商城

  • 博客项目

  • JVM

  • JUC

  • Golang

  • Kubernetes

  • 硅谷课堂

  • C

  • 源码

  • 神领物流

  • RocketMQ

  • 短链平台

  • 后端
  • Python
Iekr
2020-11-08
目录

进制

# 进制

# 二进制 八进制 十进制 十六进制

计算机只保存二进制 0 和 1,同时支持八进制和十六进制

二进制 (Bin) 八进制 (Oct) 十六进制 (Hex) 十进制 (Dec) python 中都能识别

以 0b 开头的数字是二进制 0-1 bin()

以 0o 开头的数字是八进制 0-7 oct ()

以 0x 开头的数字是十六进制 0-9 A-F hex ()

# 进制转换

# 二进制转八进制

3 个为一组如开头不够 3 位则用 0 填充

101 010

各组 3 位数倒着各自乘以 2 的 0 到 X 次方 1-2-4-8-16-32-64

1*2 的零次方 + 0*2 的一次方 + 1*2 的二次方 = 1+0+4=5

0*2 的零次方 + 1*2 的一次方 + 0*2 的二次方 = 0+2+0=2

则 42 的八进制为 5 2

# 二进制转十六进制

4 位为一组开头不够 4 位则用 0 填充

各组 4 位数倒着各自乘以 2 的 0 到 X 次方

0010 1010

0*2 的零次方 + 1*2 的一次方 + 0*2 的二次方 + 0*2 的三次方 = 0+2+0+0=2

0*2 的零次方 + 1*2 的一次方 + 0*2 的二次方 + 1*2 的三次方 = 0+2+0+8=10=A

则 42 的十六进制为 2A

# 二进制转十进制

不用分组,直接倒序各自乘以 2^0 到 2^X

101010

0*2^0+1*2^1+0*2^2+1*2^3+0*2^4+1*2^5=0+2+0+8+0+32=42

# 十进制转二进制

将十进制的数除以要转换的进制数,二进制除以 2,不断的除以 2 直到结果为 0,除以结果的余数为转换符,最后倒序排列完成转换

42/2=21 余 0

21/2=10 余 1

10/2=5 余 0

5/2=2 余 1

2/2=1 余 0

1/2=0 余 1

再倒序排列则为 101010

# bin、oct、hex 内置函数

使用 bin () 函数可以将数字 / 十进制转变成二进制

使用 oct () 函数可以将数字 / 十进制转变成八进制

使用 hex () 函数可以将数字 / 十进制转变成十六进制

编辑 (opens new window)
上次更新: 2023/12/06, 01:31:48
输入输出
数据类型的转换

← 输入输出 数据类型的转换→

最近更新
01
k8s
06-06
02
进程与线程
03-04
03
计算机操作系统概述
02-26
更多文章>
Theme by Vdoing | Copyright © 2022-2025 Iekr | Blog
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式