进制转换

Posted thoughtful-actors

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进制转换相关的知识,希望对你有一定的参考价值。

一、概念

  1、进制:

      是人为的一种计数方法,一般以进制基数进行命名区分,例如常见的十进制就是逢十进一。

     2、分类:

      进制主要有二进制、四进制、七进制、八进制、十进制、十二进制、十六进制和六十进制等。

      其中生活中最常用的是十进制,十二进制主要是用在时间计时和年份上,计算机识别的语言就是以二进制形式存在的数据。

  3、基数、位权、系数

    基数:即进位置制,命名规则也是依据基数命名,例如二进制就是逢二进一,基数为2。

    系数:不同位权上的数字,例如十进制123,系数分别为1,2,3。

    位权:即数制中某一固定位置对应的单位,例如十进制123,系数1的位权是100,系数2的位权是10,系数3的位权是1。

进制 基数 位权 系数 符号
十进制 10 10(0~n) (0~9) D
二进制 2 2(0~n) (0,1) B
八进制 8 8(0~n) (0~7) O
十六进制 16 16(0~n) (0~9,A~F) H

 

 

 

 

 

 

二、十进制转R进制

  十进制转其他进制方法:按照除相应基数取余逆排法

  例如:十进制转二进制:(123)D=()B

   计算过程:123/2=61 余1

      61/2=30   余1

      30/2=15   余0

      15/2=7     余1

      7/2=3       余1

      3/2=1       余1

      1/2=0       余1

  然后把余数按照从下到上的顺序再从左到右排列

  最后结果就是(123)D=(1111011)B

  十进制转其他进制的方法都一样,只需要改变除数就行,转成八进制就除以8,转成十六进制就除以16。

三、R进制转十进制

  其他进制转十进制方法:按权求和,即系数*位权展开求和

  例如:二进制转十进制:(1111011)B=()D

  计算过程:1*26+1*25+1*24+1*23+0*22+1*21+1*20=123

  最后结果就是(1111011)B=(123)D

  其他进制转十进制的方法都一样,只需要改变位权即幂运算的底数就行,幂运算的底数就是相应的基数,指数就是从左向右以0开始计位数。

四、二进制转八进制

  二进制转八进制方法:从左到右每三位合一,遇到高位不够补0

  例如:(1111011)B=()O

  从左到右:1 111 011 = 001 111 011 =(1 7 3)O

  最后结果为(1111011)B=(173)O

  三位一组计算时就可以看成三个互不关联的二进制,然后分别转成相应的十进制数

五、二进制转十六进制

  方法:从左到右每四位合一,遇到高位不够补0

  例如:(1111011)B=()H

  从左到右:111 1011 = 0111 1011 = (7 11)=(7B)H

  最后结果为:(1111011)B=(7B)H

  四一组计算时就可以看成四个互不关联的二进制,然后分别转成相应的十进制数

六、八进制转二进制

  方法:从左到右每个系数转成相应的二进制数,可以看成是一分三

  例如:(173)O=()B

  从左到右:1 7 3=1 111 011=(1111011)B

  最后结果为:(173)O=(1111011)B

  此过程可以看成是二进制转成八进制的逆运算,每位系数都按照十进制转二进制的规则转成相应的二进制,然后按照原来从左到右的顺序排列,最高位的0可以省略。

七、十六进制转二进制

  方法:从左到右每个系数转成相应的二进制数,可以看成是一分四

  例如:(7B)H=()B

  从左到右:7B=7 B= 7 11= 0111 1011=(1111011)B

  最后结果为:(173)O=(1111011)B

  此过程可以看成是二进制转成十六进制的逆运算,每位系数都按照十进制转二进制的规则转成相应的二进制,然后按照原来从左到右的顺序排列,最高位的0可以省去。

八、八进制与十六进制相互转换

  两个进制之间的转换可以先转成二进制或者十进制,然后再转成相应的进制。

以上是关于进制转换的主要内容,如果未能解决你的问题,请参考以下文章

进制转换

PHP进制转换[实现28163664进制至10进制相互转换]

进制转换,请将一个n进制的数转换成m进制的数,并输出.

Java十进制与其他进制相互转换

Java十进制与其他进制相互转换

编程算法基础-2.3进制转换