提示二进制 0,1,下面我们就来说一说关于十进制数215转换为八进制?我们一起去了解并探讨一下这个问题吧!
十进制数215转换为八进制
提示
二进制 0,1
八进制 0,1,2,3,4,5,6,7
十进制 0,1,2,3,4,5,6,7,8,9
十六进制 0,1,2,3,4,5,6,7,8,9,A(10),B(11),C(12),D(13),E(14),F(15)
注意
十六进制中10~15是用字母来表示的,且字母可为大小写,还可以混用。例如十六进制中的10,可以用A或a来表示;1011可以用AB或Ab来表示。
现在正式的话题来了,看下面
一、十进制与二、八、十六进制的互换
1、十进制->八进制
用8连续除十进制数整数部分,直到商为0,逆序排列余数即可得到
用8连续乘十进制数小数部分 ,直到的小数为0或达到所要求的精度为止,正序排列积的整数部分即可得
举例
假设十进制的一个数为83.12
83÷8=10 余数为3
10÷8=1 余数为2
1÷8=0 余数为1
0.12*8=0.96 整数部分为0 小数部分为0.96
0.96*8=7.68 整数部分为7 小数部分为0.68
0.68*8=5.44 整数部分为5 小数部分为0.44
0.44*8=3.52 整数部分为3 小数部分为0.52
.
.
.
此处省略,大家可以自己进行接下来的运算,因为举例,精度就短些。
(十)83.12=(八)123.0753
2、十进制->十六进制
用16连续除十进制数整数部分,直到商为0,逆序排列余数即可得到
用16连续乘十进制数小数部分 ,直到的小数为0或达到所要求的精度为止,正序排列积的整数部分即可得
举例
假设十进制的一个数为299.12
299÷16= 18 余数为B(11)
18÷16=1 余数为2
1 ÷16=0 余数为1
0.12*16=1.92 整数部分为 1 小数部分为0.92
0.92*16=7.68 整数部分为E(14) 小数部分为0.72
0.72*16=5.44 整数部分为B(11) 小数部分为0.52
.
.
.
(十)299.12=(十六)12b.1eb
3、十进制->二进制
用2连续除十进制数整数部分,直到商为0,逆序排列余数即可得到
用2连续乘十进制数小数部分 ,直到的小数为0或达到所要求的精度为止,正序排列积的整数部分即可得
举例
假设十进制的一个数为3.25
3÷2= 1 余数为1
1 ÷2=0 余数为1
0.25*2=0.5 整数部分为 0 小数部分为0.5
0.5*2=1 整数部分为1 小数部分为0
(十)299.12=(二)11.01
总结
其实十进制转二、八、十六进制,大致是一样的,同样的二、八、十六进制转十进制也是这样的
4、二、八、十六进制->十进制
把二进制数(或八进制或十六进制数)按位权形式展开多项式和的形式,求其最后的和
举例
假设二进制数为1111
1*2的三次方 等于8
1*2的二次方 等于4
1*2的一次方 等于2
1*2的零次方 等于1
8 4 2 1=15
即(二)1111=(十)15
注意 最大N此方为总的位数-1,此后次方依次递减,直到为0次方。如二进制1111,最大N次方为 4-1=3,此后依次递减,最后为0次方。八进制、十六进制也是如此
假设八进制数为123
1*8的二次方 等于64
2*8的一次方 等于16
3*8的零次方 等于3
64 16 3=83
即(八)123=(十)83
假设十六进制数为12B
1*16的二次方 等于256
2*16的一次方 等于32
11*16的零次方 等于11
256 32 11=299
即(十六)12B=(十)299
二、八、十六进制与二进制的互换
1、间接法
把二进制转为十进制再到八进制或十六进制,大家可以看我上面的进制的转换,自己试试。
2、直接法
定理1:将三位的二进制转换成一位八进制,相反的,将一位八进制转三位的二进制;
定理2:将四位的二进制转换成一位十六进制,相反的,将一位十六进制转四位二进制
定理3:分位时如位数不够,整数部分在最左边补0,小数部分在最右边补0;
举例:
二进制转八进制、十六进制
假设二进制数为1011001.1101011
进行分位 010 |101.101|010 |为分隔符
剩下的就跟二进制转十进制一样
把每三位看为整体,计算出值,最后连接就行
如010
0*2的二次方 等于0
1*2的一次方 等于2
0*2的零次方 等于0
因此 010=2
同样计算出101(值为5),最后进行连接
(二)10101.10101 = 010 |101.101|010 =(八) 25.52
同样,只是把每四位看为整体,计算出值,最后连接就行
(二)11011011.11011111 =1101|1011.1101|1111 = (十六)DB.DF
而八进制、十六进制转二进制,反过来就行
(十六)D|B.D|F=1101|1011.1101|1111 =(二)11011011.11011111
总结
八为2的三次方,因此需二进制为3位;十六为2的四次方,因此需二进制为4位,所以32进制就应该需二进制为5位,即N进制中,N为2的x次方,该进制就需要二进制x位
如有错误,请指出
如有侵权,请联系删除
写在最后今天就到这里了哈~
后续我还会发布更多的项目源或者学习资料,希望大家可以持续关注,有什么问题可以给我留言。
不管你是转行也好,初学也罢,进阶也可,如果你想学编程~
【值得关注】我的【C/C 源码资料学习群】点击进入
,