【Java 基础(人话版)】进制转换

进制的简单介绍

整数可以使用四种不同的进制表示方式:

  1. 二进制 (Binary):由 0 和 1 组成,满 2 进 1,以 0b0B 开头表示。
  2. 十进制 (Decimal):由 0-9 组成,满 10 进 1,是最常用的数值表示方式。
  3. 八进制 (Octal):由 0-7 组成,满 8 进 1,以数字 0 开头表示。
  4. 十六进制 (Hexadecimal):由 0-9 和 A(10)-F(15) 组成,满 16 进 1,以 0x0X 开头表示,字母 A-F 不区分大小写。

进制的图示

下面是一个包含十进制、二进制、八进制和十六进制的进制转换表(从 0 到 10):

十进制 (Dec)二进制 (Bin)八进制 (Oct)十六进制 (Hex)
0000000
1000111
2001022
3001133
4010044
5010155
6011066
7011177
81000108
91001119
10101012A

进制转换示例及计算方法

进制转换示例及计算方法


1. 二进制转换成十进制

规则:从最低位(右边)开始,将每个位上的数提取出来,乘以 2 的 (位数 - 1) 次方,然后求和。

示例:将 0b1011 转换为十进制:

0b1011 = 1 * 2^0 + 1 * 2^1 + 0 * 2^2 + 1 * 2^3

= 1 + 2 + 0 + 8 = 11

0b1011 = 11₁₀


2. 八进制转换成十进制

规则:从最低位(右边)开始,将每个位上的数提取出来,乘以 8 的 (位数 - 1) 次方,然后求和。

示例:将 0234 转换为十进制:

0234 = 4 * 8^0 + 3 * 8^1 + 2 * 8^2

= 4 + 24 + 128 = 156

0234 = 156₁₀


3. 十六进制转换成十进制

规则:从最低位(右边)开始,将每个位上的数提取出来,乘以 16 的 (位数 - 1) 次方,然后求和。

示例:将 0x23A 转换为十进制:

0x23A = 10 * 16^0 + 3 * 16^1 + 2 * 16^2

= 10 + 48 + 512 = 570

0x23A = 570₁₀


4. 十进制转换成二进制

规则:不断将该数 除以 2,直到商为 0 为止,然后将每步得到的余数 倒序排列,即为对应的二进制数。

示例:将 34 转换为二进制:

余数
34 ÷ 2 = 170
17 ÷ 2 = 81
8 ÷ 2 = 40
4 ÷ 2 = 20
2 ÷ 2 = 10
1 ÷ 2 = 01

倒序排列余数:100010,即 34₁₀ = 0b100010


5. 十进制转换成八进制

规则:不断将该数 除以 8,直到商为 0 为止,然后将每步得到的余数 倒序排列,即为对应的八进制数。

示例:将 131 转换为八进制:

余数
131 ÷ 8 = 163
16 ÷ 8 = 20
2 ÷ 8 = 02

倒序排列余数:203,即 131₁₀ = 0203₈


6. 十进制转换成十六进制

规则:不断将该数 除以 16,直到商为 0 为止,然后将每步得到的余数 倒序排列,即为对应的十六进制数。

示例:将 237 转换为十六进制:

余数
237 ÷ 16 = 1413 (D)
14 ÷ 16 = 014 (E)

倒序排列余数:ED,即 237₁₀ = 0xED₁₆


7. 二进制转换成八进制

规则:从低位开始,将二进制数每 3 位一组,转换成对应的八进制数。

示例:将 0b11010101 转换为八进制:

  1. 分组(从右往左,每 3 位一组):

    11(3) 010(2) 101(5)
    
  2. 转换:

    11₂ = 3₈, 010₂ = 2₈, 101₂ = 5₈
    

结果:0b11010101 = 0325₈


8. 二进制转换成十六进制

规则:从低位开始,将二进制数每 4 位一组,转换成对应的十六进制数。

示例:将 0b11010101 转换为十六进制:

  1. 分组(从右往左,每 4 位一组):

    1101(D) 0101(5)
    
  2. 转换:

    1101₂ = D₁₆, 0101₂ = 5₁₆
    

结果:0b11010101 = 0xD5₁₆


9. 八进制转换成二进制

规则:将八进制数每 1 位,转换成对应的 3 位二进制数

示例:将 0237 转换为二进制:

  1. 2₈ = 010₂
  2. 3₈ = 011₂
  3. 7₈ = 111₂

结果:0237₈ = 0b10011111


10. 十六进制转换成二进制

规则:将十六进制数每 1 位,转换成对应的 4 位二进制数

示例:将 0x23B 转换为二进制:

  1. 2₁₆ = 0010₂
  2. 3₁₆ = 0011₂
  3. B₁₆ = 1011₂

结果:0x23B₁₆ = 0b001000111011

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

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

相关文章

11.anaconda中的jupyter使用、及整合dataspell

目录 概述jupyterjupyter notebook1.生成配置文件修改notebook保存目录问题问题2,无法获取token 安装 DataSpell注意配置运行环境DataSpell 使用 概述 前置安装如有问题: 1.Python、anaconda介绍、安装及使用 jupyter jupyter notebook 1.生成配置文…

蓝桥杯 之 回溯之充分剪枝

文章目录 买瓜最大数字 在蓝桥杯当中,对于回溯是属于一个必考的问题,但是除了回溯的几个基本的问题,如果通过剪枝来提前删去无效的分支,以大大减少时间复杂度是需要我们进一步思考的问题!回溯的基本问题: 回…

【春招笔试】2025.03.13-蚂蚁春招笔试题

题目总结 题目一:区间未出现的最小值之和 1️⃣:统计全为1的子数组数量和全为0的子数组数量,利用公式计算 2️⃣:利用数学公式 n(n+1) - 2N0 - N1 计算最终答案 难度:中等 这道题目的关键在于理解 mex 的概念,并发现对于只含 0 和 1 的数组,mex 值只可能是 0、1 或 2。…

iOS 模块化架构设计:主流方案与实现详解

随着 iOS 工程规模的扩大,模块化设计成为提升代码可维护性、团队协作效率和开发灵活性的关键。本文将探讨为什么需要模块化,介绍四种主流的模块化架构方案(协议抽象、依赖注入、路由机制和事件总线),并通过代码示例和对…

太速科技-636-基于FMC的Kintex XCKU060高性能PCIe载板

基于FMC的Kintex XCKU060高性能PCIe载板 一、板卡概述 板卡主控芯片采用Xilinx 公司的 Kintex UltraScale系列FPGA XCKU060-2FFVA1156。板载 2 组 64bit 的DDR4 SDRAM,每组容量2GB,可稳定运行在2400MT/s。支持PCIE Gen3 x8模式及一路FMC HPC接口。同…

【Spring Cloud】 核心组件全解析与 2024 【微服务框架】选型指南

《Spring Cloud 核心组件全解析与 2024 微服务框架选型指南》 第一部分:Spring Cloud 核心组件及功能速查表 组件名称核心功能一句话总结详细功能说明Eureka服务注册与发现的“通讯录”Server存储服务节点信息,Client自动注册和拉取列表,实现…

SAP SD学习笔记31 - 销售BOM

上一篇讲 前受金处理(预付款处理)。 SAP SD学习笔记29 - 前受金处理(预收款处理)_fplt 付款申请与sd 数据表的关联关系-CSDN博客 本章继续讲SAP SD模块的其他知识:销售BOM。 销售BOM在现场还是会用到的。 目录 1,销售BOM概要 2,受注BOM的…

动态路径规划——01背包问题讲解和通过滚动数组优化

如果没有动态路径规划基础的兄弟可以出去了,这个题目有两个问题 第一问讲解: 1.定义状态表示 刚开始我做的时候根据我的经验定义了一个状态表示dp[i]表示从1到i个物品中选择的最大价值,但是这个状态表示有一个明显的问题,我怎么知…

Java程序的逻辑控制

目录 1、顺序结构2、分支结构2.1、if 语句2.2、switch 语句 3、循环结构3.1、while 语句3.2、break3.3、continue3.4、for 循环3.5、do while 语句 1、顺序结构 顺序结构比较简单,按照代码书写的顺序一行一行执行。如果调整代码的书写顺序, 则执行顺序也发生变化。…

【鸿蒙开发】Hi3861学习笔记- GPIO之LED

00. 目录 文章目录 00. 目录01. GPIO概述02. 硬件设计03. 软件设计04. 实验现象05. 附录 01. GPIO概述 GPIO(General-purpose input/output)即通用型输入输出。通常,GPIO控制器通过分组的方式管理所有GPIO管脚,每组GPIO有一个或多…

你的完美主义:从缺陷到超能力

所属专栏:《逻辑辨证系列》 前情回顾: 《完美还是完成》(一):完成还是完美—完成大于完美 时间、机会、情绪成本 先完成 … 本期: 《完美还是完成》(二):你的完美主…

438.找出字符串中所有字母异位词

题目: 给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 示例 1: 输入: s "cbaebabacd", p "abc" 输出: [0,6] 解释: 起始索引等于 0 的子串是 "cba&q…

win32汇编环境,对话框程序中创建托盘示例一

;运行效果 ;win32汇编环境,对话框程序中创建托盘示例一 ;托盘,就是电脑桌面右下角那个角落里的图标,这里展示基本的应用方法。 ;直接抄进RadAsm可编译运行。重要部分加备注。 ;下面为asm文件 ;>>>>>>>>>>>>>>…

Ansible相关工具:ansible-doc、ansible

文章目录 管理方式相关工具ansible-doc命令用法案例 ansibleansible主配置文件日志文件主机清单 ansible命令基本格式:选项说明:ansible的Host-pattern或关系逻辑与逻辑非正则表达式 ansible命令执行过程ansible 的执行状态 管理方式 利用ansible实现管…

LeetCode 热题 100_前 K 个高频元素(73_347_中等_C++)(堆)(哈希表+排序;哈希表+优先队列(小根堆))

LeetCode 热题 100_前 K 个高频元素(73_347) 题目描述:输入输出样例:题解:解题思路:思路一(哈希表排序):思路二(哈希表优先队列(小根堆&#xff0…

使用Python在Word中生成多种不同类型的图表

目录 工具与环境配置 在 Word 中创建图表的步骤 在Word中创建柱形图 在Word中创建条形图 在Word中创建折线图 在Word中创建饼图 在Word中创建散点图 在Word中创建气泡图 在 Word 文档中插入图表不仅能更直观地呈现数据,还能提升文档的可读性和专业性。常见的…

项目-个人博客测试报告

目录 一、项目背景 二、项目功能 三、测试计划 (1)功能测试 (2)自动化测试 (3)性能测试 一、项目背景 1、个人博客系统是一个操作简单的基于Spring前后端分离的项目,同时使用MySQL数据库来进…

前端npm包- CropperJS

文章目录 一、CropperJS**核心特性****官网与文档****安装与使用**1. **通过 npm/yarn/pnpm 安装**2. **HTML 结构**3. **引入 CSS 和 JS**4. **初始化裁剪器** **相关插件/替代方案****适用场景****注意事项** 总结 一、CropperJS cropperjs 是一个轻量级、功能强大的 图片裁…

杨辉三角形(信息学奥赛一本通-2043)

【题目描述】 例5.11 打印杨辉三角形的前n(2≤n≤20)行。杨辉三角形如下图: 当n5时 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 输出: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 【输入】 输入行数n。 【输出】 输出如题述三角形。n行&#…

图论入门【数据结构基础】:什么是图?如何表示图?

图(Graph) 是一种非线性数据结构,用于表示对象之间的关系。图由 顶点(Vertex) 和 边(Edge) 组成,其中顶点表示对象,边表示对象之间的关系。图广泛应用于计算机科学、数学…