Fork me on GitHub

进制之间的转换

进制转换常见问题

十进制转二进制小数问题

整数:“除二取余,逆序排列”、小数:“乘二取整,顺序排列”

15.43

整数部分:

15/2=7  余 1

7/2=3    余 1

3/2=1    余 1

1/2=0    余 1  

除二取余,逆序排列:1111

小数部分:

0.43*2=0.86  整 0

0.86*2=1.72  整 1

0.72*2=1.44  整 1

0.44*2=0.88  整 0

0.88*2=1.76  整 1

0.76*2……

……

乘二取整,顺序排列:01101……

15.43二进制为:1111.01101……

 

78.69

整数部分:

78/2=39  余 0

39/2=19  余 1

19/2=9    余 1

9/2=4      余 1

4/2=2      余 0

2/2=1      余 0

1/2=0      余 1

除二取余,逆序排列:1001110

小数部分:

0.69*2=1.38  整 1

0.38*2=0.76  整 0

0.76*2=1.52  整 1

0.52*2=1.04  整 1

0.04*2=0.08  整 0

0.08*2=0.16  整 0

0.16*2……

……

乘二取整,顺序排列:101100……

78.69的二进制为:1001110.101100……

所以用小数进行加减乘除法运算时会出现精度问题。

十进制表示方法

十进制的另类写法1:21345 = 2*10^4 + 1*10^3 + 3*10^2 +4*10^1 + 5*10^0,是不是和二进制转十进制很像?

十进制的另类写法2:21345除以10倒序取余数,是不是和十进制转二进制很像?

(以下内容取自百度)

进制也就是进制位,对于接触过电脑的人来说应该都不陌生,我们常用的进制包括:二进制、八进制、十进制与十六进制,它们之间区别在于数运算时是逢几进一位。比如二进制是逢2进一位,十进制也就是我们常用的0-9是逢10进一位。

二进制与十进制之间的转换

十进制转二进制

十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。

二进制转十进制

把二进制数按权展开、相加即得十进制数。

 

二进制与八进制之间的转换

二进制转八进制

3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0)。

八进制转成二进制

八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零。

 

二进制与十六进制之间的转

二进制转十六进制 

与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(注意事项,4位二进制转成十六进制是从右到左开始转换,不足时补0)。

十六进制转二进制

十六进制数通过除2取余法,得到二进制数,对每个十六进制为4个二进制,不足时在最左边补零。

十进制与八进制与十六进制之间的转换

十进制转八进制或者十六进制有两种方法

  1. 第一:间接法—把十进制转成二进制,然后再由二进制转成八进制或者十六进制。这里不再做图片用法解释。

  2. 第二:直接法—把十进制转八进制或者十六进制按照除8或者16取余,直到商为0为止。

八进制或者十六进制转成十进制

把八进制、十六进制数按权展开、相加即得十进制数。

 

posted @ 2019-01-02 11:11  秋夜雨巷  阅读(765)  评论(0编辑  收藏  举报