二、八、十、十六进制及小数间的转换
文章目录
- 一、进制表示符号
- 二、十进制转换为二进制、八进制、十六进制
- 2.1、十进制转换为二进制
- 2.2、十进制转换为八进制
- 2.3、十进制转化为十六进制
- 三、二进制、八进制、十六进制转换为十进制
- 3.1、二进制转换为十进制
- 3.2、八进制转换为十进制
- 3.3、十六进制转换为十进制
- 四、二进制转换为八进制、十六进制
- 4.1、二进制转换为八进制
- 4.2、二进制转换为十六进制
一、进制表示符号
二进制:B 用0和1表示
八进制:O 用0、1、2、3、4、5、6、7
十进制:D 用0、1、2、3、4、5、6、7、8、9
十六进制:H 用0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
二、十进制转换为二进制、八进制、十六进制
2.1、十进制转换为二进制
整数部分:整数部分除2取余数,再取倒序
小数部分:小数部分乘2取整,再顺序取(小数部分为零时,即为乘完或者按题目要求精度要求取小数后几位)
eg:68.125D =
1000100.001
B(精确到小数后4位)
解析:
68/2=34…0
34/2=17…0
17/2=8…1
8/2=4…0
4/2=2…0
2/2=1…0
1/2=0…1
整数部分倒序取为:10001000.125×2=0.25…0
0.25×2=0.5…0
0.5×2=1.0…1
小数部分顺序取为:001
2.2、十进制转换为八进制
整数部分:整数部分除8取余数,再取倒序
小数部分:小数部分乘8取整,再顺序取(小数部分为零时,即为乘完或者按题目要求精度要求取小数后几位)
eg:57.5D =
71.4
O(精确到小数后3位)
解析:
57/8=7…1
7/8=0…7
整数部分为:710.5×8=4.0…4
小数部分为:4
2.3、十进制转化为十六进制
整数部分:整数部分除16取余数,再取倒序
小数部分:小数部分乘16取整,再顺序取(小数部分为零时,即为乘完或者按题目要求精度要求取小数后几位)
eg:69.625D=
45.a
H(精确到小数后2位)
解析:
69/16=4…5
4/16=0…4
整数部分为:450.625×16=10…a
小数部分为:a
三、二进制、八进制、十六进制转换为十进制
3.1、二进制转换为十进制
整数部分:每个数去乘以2的相应次方
小数部分:小数点后则是从左往右(从-1一直往后)。
eg:00101010.01B =
42.25
D
解析:
最后一位下标为0,从0开始,向左记数
整数部分:
0 0 1 0 1 0 1 0 ---->二进制数(整数部分)
7 6 5 4 3 2 1 0 ---->下标
计算:
00101010B=0×2^6 + 0×2^5 + 1×2^5 + 0×2^4 + 1×2^3 + 0×2^2+ 1×2^1 + 0×2^0 = 42D小数部分:
0 1 ---->二进制数(整数部分)
-1 -2 ---->下标
计算:
0.01B = 0×2^(-1) + 1× 2^(-2) = 0.25D
3.2、八进制转换为十进制
①整数部分:每个数去乘以8的相应次方
小数部分:小数点后则是从左往右(从-1一直往后)。
eg:71.4O =
57.5
D
解析:
最后一位下标为0,从0开始,向左记数
整数部分:
7 1 ---->八进制数(整数部分)
1 0 ---->下标
计算:
71.4O=7×8^1 + 1×8^0 = 57D小数部分:
4 ---->二进制数(整数部分)
-1 ---->下标
计算:
0.4O = 4×8^(-1)= 0.5D
3.3、十六进制转换为十进制
①整数部分:每个数去乘以16的相应次方
小数部分:小数点后则是从左往右(从-1一直往后)。
eg:a.2H =
10.125
D
解析:
最后一位下标为0,从0开始,向左记数
整数部分:
a ---->八进制数(整数部分)
0 ---->下标
计算:
aH=a×16^0 = 10D小数部分:
2 ---->二进制数(整数部分)
-1 ---->下标
计算:
0.2H = 2×16^(-1)= 0.125D
四、二进制转换为八进制、十六进制
4.1、二进制转换为八进制
取三合一法:以小数点为分界点,向左(向右)每三位取成一位(不足用零补齐),接着将这三位二进制按权相加,得到的数就是一位八位二进制数,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的八进制数。
eg:100011.01110B=
43.34
O
整数部分:
100 011
210 210 ------>下标
计算:
100=1×2^2 + 0×2^1 + 0×2^0 =4
011=0×2^2 + 1×2^1 + 1×2^0=3
100011B = 43O小数部分
011 100
210 210
计算:
011=0×2^2 + 1×2^1 + 1×2^0=3
100=1×2^2 + 0×2^1 + 0×2^0=4
0.01110B=0.34O
4.2、二进制转换为十六进制
取四合一法:以小数点为分界点,向左(向右)每四位取成一位(不足用零补齐),接着将这四位二进制按权相加,得到的数就是一位十六位二进制数,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的十六进制数。
eg:11001.001B=
19.2
H
整数部分:
0001 1001
3210 3210 ---->下标
计算:
0001=1×2^3 + 1×2^2 + 0×2^1 + 0×2^0=1
1001=1×2^3 + 0×2^2 + 0×2^1 + 0×2^0=9
11001B=19H小数部分
0010 ()不足四位自动补0
3210 ---->下标
计算:
0010 = 0×2^3 + 0×2^2 + 1×2^1 + 0×2^0=2
0.001B=2H
八进制转换成十六进制算法通常有两种方法:
1、先将八进制转换成二进制,再将二进制转换成十六进制
2、先将八进制转换成十进制,再将十进制转换成十六进制
参考的文章:https://blog.csdn.net/zhouym_/article/details/88360625
二、八、十、十六进制及小数间的转换相关推荐
- 计算机里常用的二/八/十/十六进制
休闲之余整理了下电脑和手机计算器里最常用的进制 1.HEX,Hexadecimal ,代逢十六进一,表十六进制.一般用数字0到9和字母A到F表示,其中A~F表示10~15.前缀一般用数字0和字母X(不 ...
- c语言十六进制转换加H,c语言十六进制和十进制间的转换.docx
集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988) 集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988) ...
- 二 八 十 十六 进制之间快速转换
一. 十进制与二进制之间的转换 (1) 十进制转换为二进制,分为整数部分和小数部分 ① 整数部分 方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数 ...
- c语言进制转换pdf下载,C语言 十六进制和十进制间的转换.pdf
1.将十六进制转换为十进制. #include #include int main(void){ int convert(int,char *); int i,j ; char m[20]; prin ...
- js 定义一个二/八/十六进制数,进制之间的转换
在javascript中定义二进制需使用0b开头 console.log(0b1001); // 9 console.log(1001); // 1001 在javascript中定义八进制需使用0开 ...
- 两个八进制小数怎么相加_组成原理中关于小数和整数关于十,二,十六,八进制之间任意的转换...
一:我们首先介绍一下基数和位权这个概念: 二:十六.八.二进制转换二.八.十六进制 三 十进制转换二.八.十六进制 四 :任意进制数转换为十进制教 一:我们首先介绍一下基数和位权这个概念: 1)基 ...
- 《Python Cookbook 3rd》笔记(3.4):二、八、十六进制整数
二.八.十六进制整数 问题 你需要转换或者输出使用二进制,八进制或十六进制表示的整数. 解法 为了将整数转换为二进制.八进制或十六进制的文本串,可以分别使用 bin() , oct() 或 hex() ...
- python实现进制转换器_python实现进制转换(二、八、十六进制;十进制)
python实现进制转换(二.八.十六进制:十进制) (一)十进制整数转为二.八.十六进制 1.format实现转换 >>> format(2,"b") # (1 ...
- python转换八进制用取余数方法_python 二、八、十六进制之间的快速转换
一.进制转换 1.2 十进制转二进制 bin(18)--> '0b10010' 去掉0b就是10010 即为十进制18转二进制是10010 十进制转八进制oct(18) --> ...
最新文章
- Spring Cloud【Finchley】-10Hystrix监控
- 【NLP】含10,000 Python问题,伯克利联合团队推出新的代码生成评价基准
- Mysql命令行修改字段类型
- 双栏模板图片标题无法居中_没想到吧,只用一张图片,你就可以做一份PPT!
- [转]:tbox中数据库的使用
- html5连接mysql数据库操作_html5-本地数据库的操作
- 【PHP学习】—创建PHP文件(一)
- Slardar Sql Mapper Framework for Java( Java 持久层框架一枚~)
- Python中的注释和文档
- Eclipse中source folder、folder、package的区别?
- 游戏数据分析-玩家战力分析
- 书中自有黄金屋系列5:读《正面管教》
- mysql 1062_mysql #1062 报错
- 号外 ! 号外 ! V7包下的View都来此参加同学会 , 快来看,快来看...
- mysql怎样发给别人_怎么把数据库发给别人
- 恐怖系列丨互联网幕后攻防:咳血的独角兽之血腥丛林中的无底线战争
- int argc,char*argv[ ]的简洁解释
- lucene ---- 黑马教程
- node.js+小程序基于微信小程序的校园失物招领系统毕业设计源码072343
- 服务器用viroblast搭建blast
热门文章
- c 程序 实现一元二次方程
- python读取连接数据库文件_python 读取配置文件 pandas连接数据库
- 31. Leetcode 82. 删除排序链表中的重复元素 II (链表-双指针)
- 异常检测-孤立森林(IsolationForest)
- spark读取hbase数据
- 数据挖掘流程(四):建模调参
- 机器学习高阶认识(一): 机器学习假设与迁移学习
- pytorch笔记 torch.clamp(截取上下限)
- MATLAB应用实战系列NSGA-II多目标优化算法原理及应用实例(附MATLAB代码)
- 深度学习核心技术精讲100篇(六)-keras 实战系列之知识蒸馏(Knowledge Distilling)