二进制与十六进制,二进制与八进制之间的相互转换技巧

目录

1.二进制转换为八进制

2.八进制转换为二进制

3.二进制转换为十六进制

4.十六进制转换为二进制


1.二进制转换为八进制

(1101110.1011)_{2}转换为8进制

第一步:以小数点为分界线,整数部分自右向左,小数部分自左向右每3位取成1位:

整数部分:1,101,110

小数部分:101,1

第二步:不足3位补0,为了保证原值大小不变,须在二进制的两头补0(整数部分前面补0,小数部分后面补0)

整数部分:001,101,110

小数部分:101,100

第三步:使用位权法,将每3位转换为8进制:

位权法示例:

110:2^{0}*0+2^{1}*1+2^{2}*1

101:2^{0}*1+2^{1}*0+2^{2}*1

整数部分:001=1       101=5        110=6

小数部分:101=5       100=4

所以(1101110.1011)_{2}=(156.54)_{8}

2.八进制转换为二进制

知道2进制转8进制,那么8进制转2进制就反过来:

对于(67.54)_{8}

6=2^{1}+2^{2}=110

7=2^{0}+2^{1}+2^{2}=111

5=2^{0}+2^{2}=101

4=2^{2}=100

所以: (67.54)_{8}=(110 111.101100)_{2}

3.二进制转换为十六进制

2进制转16进制的转换方法 与 2进制转8进制的方法一样,只是3位的划分变为了4位的划分,举个例子:

(111101001.10111)_{2}:

第一步:以小数点为分界线,整数部分自右向左,小数部分自左向右每4位取成1位:

整数部分:1,1110,1001

小数部分:1011,1

第二步:两头补0

整数部分:0001,1110,1001

小数部分:1011,1000

第三步:使用位权法进行转换,每4位转化为一位16进制数:

0001=1*2^{0}=1

1110=0*2^{0}+1*2^{1}+1*2^{2}+1*2^{3}=(E)_{16}

以此类推:

1001=9

1011=(B)_{16}

1000=8

所以:(111101001.10111)_{2}=(1E9.B8)_{16}

4.十六进制转换为二进制

16进制转为2进制 与 2进制转16进制相反:

(6E.2)_{16}:

6=2^{1}+2^{2}=0110

E=14=2^{3}+2^{2}+2^{1}=1110

2=2^{1}=0010

所以:(6E.2)_{16}=(1101110.0010)_{2}

注意:这里整数部分最前面的0可以省略,但是小数部分最后的0不能省略,因为:

001表示1,0010表示2,两者是不同的,而整数部分最前面0100,100 两者是相同的。 

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

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

相关文章

【python入门】day28:记录用户登录日志

演示 代码 #-*- coding:utf-8 -*- print(记录用户登录日志----------------------------) import time def show_info():print(输入提示数字,执行相应操作:0退出,1查看登录日志) def write_logininfo(username):#----------记录日志with open(log.txt,a,encodingutf-8)as file…

如何高效阅读Linux的man page

有时候需要在man page中查某个命令的用法,我们一般会使用man command的方式来查询,例如man vmstat.但是对于一些bash内置的命令,如alias,如果使用man alias会打开General Commands Manual ,如下图 可以看到,内置命令很多&#xff…

COBOL语言 :一种主要专注于解决业务问题的编程语言

译文: 什么是COBOL? COBOL是一种主要专注于解决业务问题的编程语言。COBOL的完整形式是面向业务的通用语言。它主要用于公司和政府的商业、金融和行政系统。这种语言也被用来解决许多数据处理问题。 它是由CODASYL(数据系统语言会议)开发的。它被用作大型机中的一…

基于 InternLM 和 LangChain 搭建你的知识库

如何打造垂域大模型是一个重要落地方向。 如何打造个人专属的大模型应用也是重要的问题。 RAG 外挂一个知识库 优势:成本低,实时更新 劣势:能力受基座模型影响大,RAG每次需要将检索文档和问题提交给大模型,极大占用上下…

工程项目管理系统源码与Spring Cloud:实现高效系统管理与二次开发

随着企业规模的不断扩大和业务的快速发展,传统的工程项目管理方式已经无法满足现代企业的需求。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,企业需要借助先进的数字化技术进行转型。本文将介绍一款采用Spring CloudSpring BootMybat…

C++力扣题目701--二叉搜索树中的插入操作

给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同。 注意,可能存在多种有效的插入方式&a…

苏州倍丰智能新型雾化粉末技术量产成功!金属3D打印全产业链更进一步

苏州倍丰智能深耕金属3D打印技术领域,以金属3D打印全产业链为目标,围绕金属3D打印设备,涵盖包括金属粉末前后处理设备、金属粉末原材料制备、先进工艺研发等多个领域,完成了一整条自上而下的金属3D打印全产业链。 近日&#xff0c…

大数据Doris(五十四):SQL函数之日期函数(二)

文章目录 SQL函数之日期函数(二) 一、DAYOFMONTH(DATETIME date) 二、dayofweek(DATETIME date)

HarmonyOS 通过 animateTo讲解尺寸动画效果

上文 HarmonyOS讲解并演示 animateTo 动画效果 我们已经做出了基本的动画效果 也对 animateTo 的使用比较熟悉了 第一个参数是 配置动画参数的json 第二个参数 则是改变我们元素属性值的事件 但属性值 远远不止位置属性 本文 我们来说 通过尺寸变化 完成动画效果 如果你有看过…

代码随想录算法训练营第4天 | 24. 两两交换链表中的节点 , 19.删除链表的倒数第N个节点 , 面试题 02.07. 链表相交 , 142.环形链表II

链表知识基础 文章链接:https://programmercarl.com/%E9%93%BE%E8%A1%A8%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html# 24. 两两交换链表中的节点 题目链接:https://leetcode.cn/problems/swap-nodes-in-pairs/ 使用虚拟头结点,这样会方便很…

Centos7编译Python3.11源码并安装完成的详细教程

Python3.11的Linux源码: Index of /ftp/python/https://www.python.org/ftp/python/由于Centos7里自带的openssl是1.0版本的,而Centos Stream8和9用的是openssl-1.1.1版本的。 注意:openssl必须是openssl-1.1.1版本的,虽然最高版…

QT的事件机制

QT的事件机制 文章目录 QT的事件机制 1、QT的事件机制。2、QT事件的整体流程。1、事件处理函数。1、鼠标按下与鼠标释放事件。2、事件的接收与忽略(accept()和ignore()函数)。 2.事件的分发enevt()1、事件分发的dome。2、enevt事件的缺点。 3、事件的过滤器。 3、总…

通过本质看现象:关于Integer受内部初始化赋值范围限制而出现的有趣现象

文/朱季谦 这是我很多年前的第一篇技术博客,当时作为一名技术小菜鸟,总体而言显得很拙见,但也算是成长路上的一个小脚印,希望能在以后的日子里,可以对JAVA技术有一个更加深入的思考与认识。 前几天我在逛论坛的时候&a…

SSM基础入门

SSM Mybatis、Spring和SpringMVC这三个框架整合在一起完成业务功能开发 文章目录 SSM5.1 流程5.2 详细步骤5.2.1 基本配置5.2.2 功能模块开发5.2.3 测试5.2.3.1 单元测试5.2.3.2 PostMan测试 5.3 统一结果封装5.3.1 概念5.3.2 实现 5.4 统一异常处理5.4.1 异常处理器的使用5.4…

Linux Centos7静默安装(非图形安装)Oracle RAC 11gR2(Oracle RAC 11.2.0.4)

Oracle RAC (全称Oracle Real Application Clusters )静默安装(非图形安装)教程。 由于这篇文章花费了我太多时间,设置了仅粉丝可见,见谅。 环境说明: 虚拟机软件:VMware Workstation 16 Pro…

Git与VScode联合使用详解

目录 Git与VScode联合使用 方式一 1. 用vscode打开文件夹,如图点击初始化仓库,把此仓库初始为git仓库。 2. 提交文件到本地仓库 3. vscode与github账号绑定 4. 在github中建立远程仓库 5. 本地仓库与远程仓库绑定 方式二 1. 在github上建立远程仓…

VSCode添加Python解释器并安装Python库

目录 一、安装VSCode 二、安装Python解释器 1、安装包链接 2、安装过程 3、测试 4、安装flake8和yapf两个包 (1)安装flake8包 (2)安装yapf包 三、VSCode中选择python解释器 一、安装VSCode VSCode安装教程(默…

Windows之任意文件删除到提权

前言 ZDI 发表过从任意文件夹删除到提权的利用过程,还提供了任意文件删除到提权的利用过程,所以一字之差但是漏洞利用方式也是有细微偏差的。 这里把任意文件删除和任意文件夹删除漏洞提权结合起来分析,是因为其最后的利用过程是一样的&…

认识监控系统zabbix

利用一个优秀的监控软件,我们可以: ●通过一个友好的界面进行浏览整个网站所有的服务器状态 ●可以在 Web 前端方便的查看监控数据 ●可以回溯寻找事故发生时系统的问题和报警情况 了解zabbix zabbix是什么? ●zabbix 是一个基于 Web 界面的提供分布…

JVM:从零到入门

JVM,就是Java虚拟机。 JVM是一个巨大的话题,我们本文主要简单介绍一些围绕JVM相关的基础知识。 目录 JVM内存区域划分 本地方法栈 虚拟机栈 堆 程序计数器 方法区/ 元数据区 类加载 1.加载 2.验证 3.准备 4.解析 5.初始化 双亲委派模型 …