各进制间的相互转换

1.十进制

(1)、十进制转二进制
十进制整数转换为二进制整数采用"除2取余,逆序排列"法。
例如:
各进制间的相互转换_第1张图片
(2)、十进制转八进制
和转为二进制一样,将十进制数除以八,按顺序记录每次得到的余数,直到商为0,然后将得到的各个余数从最后得到的那个开始向右排起就是一个八进制数了
例如:
各进制间的相互转换_第2张图片
(3)、十进制转十六进制
跟上面差不多,就是变成了除以16
例如:
各进制间的相互转换_第3张图片

2.二进制

(1)、二进制转十进制
从二进制的右边第一个数开始,每一个乘以2的n次方,n从0开始,每次递增1。然后得出来的每个数相加即是十进制数。
各进制间的相互转换_第4张图片

(2)、二进制转八进制
取三合一法,即从二进制的小数点为分界点,向左(向右)每三位取成一位,接着将这三位二进制按权相加,得到的数就是一位八位二进制数,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的八进制数。如果向左(向右)取三位后,取到最高(最低)位
时候,如果无法凑足三位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足三位。
例:
1、将二进制数101110.101转换为八进制
得到结果:将101110.101转换为八进制为56.5
2、将二进制数1101.1转换为八进制
得到结果:将1101.1转换为八进制为15.4

各进制间的相互转换_第5张图片 简易背过,也可以自己找规律。

(3)、二进制转十六进制
二进制转换成十六进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位

3.八进制

(1)、八进制转二进制
八进制转为二进制,反过来啦,方法就是一分三,即一个八进制数分成三个二进制数,用三位二进制按权相加,最后得到二进制,小数点依旧就可以啦。
可以参看上面的表

(2)、八进制转十进制
跟二进制转换为十进制差不多
各进制间的相互转换_第6张图片
(3)、八进制转化为十六进制
八进制转换bai成十六进制算法通常有两种方法:

1、先将八进制转换成二进制,再将二进制转换成十六进制

2、先将八进制转换成十进制,再将十进制转换成十六进制

4.十六进制

(1)、十六进制转换为二进制

将16进制转为二进制,反过来啦,方法就是一分四,即一个十六进制数分成四个二进制数,用四位二进制按权相加,最后得到二进制,小数点依旧就可以啦

(2)、十六进制转换为十进制
和上面的二进制转十进制和八进制转十进制差不多
各进制间的相互转换_第7张图片

(3)、十六进制转八进制

可以先转化为十进制,再转化为十六进制。
比较简单的方法是通过先转化为二进制,再转化为十六进制

你可能感兴趣的:(c,c#,C语言,c语言)