不同进制之间的转换[全网最全!!!]
文章目录
- 前言
- 正文
- 1 转换成二进制
- 1.1 八进制 → 二进制
- 1.2 十进制 → 二进制
- 1.3 十六进制 → 二进制
- 2 转换成八进制
- 2.1 二进制 → 八进制
- 2.3 十进制 → 八进制
- 2.4 十六进制 → 八进制
- 3 转化成十进制
- 3.1 二进制 → 十进制
- 3.2 八进制 → 十进制
- 3.3 十六进制 → 十进制
- 4 转化成十六进制
- 4.1 二进制 → 十六进制
- 4.2 十进制 → 十六进制
- 4.3 八进制 → 十六进制
- 总结
前言
刚学习计算机组成原理的时候会遇到这个,一开始觉得这个转换挺简单的,然后做了做突然发现它还有带小数点的,而且4个进制之间随意的进行转换。搞得我头都大了,真是的啊!!!然后我闭关1小时,写出了这个总结,来让大家也逃出进制之间转换的苦海。
正文
1 转换成二进制
1.1 八进制 → 二进制
从左到右每一个八进制数转换成3位二进制数。
例如:75 转换成 二进制,先将7转换成111,再将5转换成101,所以75转换成二进制就是111101。
1.2 十进制 → 二进制
- 整数部分
十进制转化为二进制应该大家都会吧,我在这里也讲一下吧,老师是用的取余运算,我感觉这个有点复杂,就讲我自己平时怎么做的了。
例如 10 转化为二进制,首先10=8+2,这里都转化成2的次幂形式,直接8的二进制位1000,然后加上2的二进制位0010,所以10的二进制数是1010。
- 小数部分
小数部分转化成二进制,就是乘2取整然后依照取整顺序输出。这里贴个图更好的理解。(图来源:菜鸟教程)
1.3 十六进制 → 二进制
十六进制的类似于八进制,只是一位16进制数代表4位二进制数(其实也挺好理解的,就是4位二进制数的最大能表示15,刚好是没有16)
2 转换成八进制
2.1 二进制 → 八进制
相当于八进制转化成二进制的逆操作,从左到右每三位二进制数生成一位八进制数。
例如111101转化成二进制,首先将111转化成八进制7,再将101转化成八进制5,最后转换成了75。
2.3 十进制 → 八进制
- 整数部分
建议用间接法比较好,先转化成二进制,然后再转化成八进制。(多次试验的惨痛经验)- 小数部分
和十进制小数部分转化成二进制差不多,只是这里是乘8取整。这里就不再过多解释了。
2.4 十六进制 → 八进制
也是建议用间接法,先转化成二进制,然后再转化成八进制,这我感觉是最简单的办法了,如果有更好的办法欢迎大家在评论区里评论。
3 转化成十进制
3.1 二进制 → 十进制
设n为二进制的当前位数,2^n-1代表每位的权重,转化时候只需要将每位乘以对应的权重,最后再全部加起来就行了。我这里举个例子,就会了。
3.2 八进制 → 十进制
和二进制转化为十进制大同小异,只是权重变成了8^n-1
3.3 十六进制 → 十进制
和二进制转化为十进制大同小异,只是权重变成了16^n-1
4 转化成十六进制
4.1 二进制 → 十六进制
和二进制转化为八进制大同小异,只是从左到右每4位转换成一位十六进制的数。这里不再多说了。
4.2 十进制 → 十六进制
建议先转化成二进制,然后再转化成十六进制。
4.3 八进制 → 十六进制
建议先转化成二进制,然后再转化成十六进制。不建议用取余运算。
总结
- 转化成十进制的时候,只是每位乘以对应的权重,然后将所有的数加起来。权重根据几进制转化为十进制判断。
- 八进制和十六进制之间的转换,建议先转换为中间二进制数,然后再进行转化,比较简单。
不同进制之间的转换[全网最全!!!]相关推荐
- java中各进制之间的转换(十进制转十六进制、十进制转二进制、二进制转十进制、二进制转十六进制)...
在java编辑中有没有遇到经常需要进行java中各进制之间的转换(十进制转十六进制.十进制转二进制.二进制转十进制.二进制转十六进制)的事情呢?下面我们就来分析一下各自是怎么转换的: [java] / ...
- 二进制-八进制-十进制-16进制之间的转换
进制之间的转换 主要用到连个函数: Convert.ToInt32(str,numbased):将字符串转成str,按照numbeased指定的进制转成10进制数: Convert.ToString( ...
- JAVA进制及进制之间的转换
进制 一.进制 二进制: 0.1 满二进一 以0b开头作为标识 在jdk1.7之前程序中无法直接书写一个二进制数字 八进制: 0~7,满8进1 要求以0做开头为标识 十进制 十六进制: 0~9.A~F ...
- 9277用计算机,关于计算机常用进制以及进制之间的转换笔记
计算机常用进制以及进制之间的转换 进制的由来 生活中的常用进制 计算机中的二进制 计算机常用四种进制的说明 八进制和十六进制 进制之间的转换 进制的由来 进位就是进位计数制,就是一种计数的方法 古代社 ...
- c 语言转换成php语言,C++_C 语言进制之间的转换,二进制、八进制和十六进制向 - phpStudy...
C 语言进制之间的转换 二进制.八进制和十六进制向十进制转换都是非常容易的,就是"按权相加". 所谓"权",也即"位权".例如,十进制第1位 ...
- 一篇关于不同进制之间的转换、比如二进制、八进制、十进制、十六进制等
1.其他进制转十进制二进制转十进制计算公式:从最低位开始(右边起),将每个位上的数提取出来,乘于2的(位数-1)次方,然后求和1101 =1*2^0+0*2^1+1*2^2+1*2^3=1+0+4+8 ...
- 计算机中各进制之间的转换
各进制之间的转换 由于有些时候总是会忘记一些各种进制之间的转换,长时间不用,就会比较模糊,所有就将其做个总结. 二进制转十进制 首先就相当于二进制数 个位数x20+十位数x21+百位数x22- 例子 ...
- Python中各种进制之间的转换
Python整数能够以十六进制,八进制和二进制来编写,作为一般以10位基数的十进制计数法的补充. 一: 上面三种进制的常用表示 >>> 0o1, 0o20, 0o377 # 八进制常 ...
- C++控制不同进制输出(二进制,八进制,十进制,十六进制)各种进制之间的转换
目录 1.输出(头文件讲解) 2.格式控制 常用的I/O流控制符 4.各种进制之间的转换(进制大乱斗) 4.1.写在前面 4.2整体框架搭建 4.3菜单函数 4.4用户输入选择(main函数体中) 4 ...
最新文章
- 关于node.js的进程管理
- 【算法与数据结构】汉诺塔问题Java实现
- C# Base64编码/解码
- jQuery代码优化的9种方法
- 简单叙述html的发展历史,HTM
- 你绝对能懂的“机器学习”(一)
- mysql-bin磁盘满数据库重启不_liunx磁盘空间满了,导致mysql数据库无法启动
- oracle 主键约束复制,Oracle主键及约束
- CDNOW用户消费行为分析报告(python+ppt)
- 45 MM配置-采购-条件-定价过程-定义定价计算方案
- 【OpenCV】OpenCV实战从入门到精通之 -- 图像对比度、亮度值调整
- opensplice dds v6.3.2_给你看个宝贝,近乎完美的DDS正弦波信号音生成器
- Node.js webpack webpack-dev-server
- 无人驾驶网约车营销分析
- 批处理复制文件/文件夹到当前目录下所有文件夹中
- 图像处理系列——图像融合之加权平均(WA)
- 以下对python程序缩进格式描述错误的是_转载 | python二级选择题与分析(8)
- 怎么开启MIUI8系统的ROOT超级权限
- Oracle 的next_day函数详解
- 脸上8部位长痘原因与器官关系
热门文章
- 第一篇:nutz初步了解
- vulhub漏洞—Heartbleed
- 零星PCB打板|开源广场|每月2张|等你来撸|保姆级教程:嘉立创免费PCB打样获取攻略
- 如何在网页中打开一个本地桌面程序
- 千禧年七大难题之 P = NP
- 虾米 linux,GitHub - eNkru/electron-xiami: 虾米音乐 虾米电台 - Linux Mac | Xiami Player Xiami Radio deskt...
- 以航天标准研制,饮冰携三款激光雷达上演价格战?...
- 《开源思索集》一欢迎来到异步社区!
- DS18B20温度转化
- 基金公司上报薪酬方案:5000万封顶?不少基金公司2021年年终奖待发