今天偶然回忆了一下进制转换的机制,才发现都已经忘得差不多了,现在来回忆复盘一下。

进制的定义就是逢位进数,比如二进制数是逢二进一,十进制是逢十进一,几进制数就是逢几进位,我们生活中用的比较多的数有二进制、八进制、十进制、十六进制。

二进制与十进制的转换

例:101101

二进制转十进制:将每一位数字拆开,从右到左,依次乘以二的递增次方,从0开始。如下:

android 二进制转图片显示 二进制图片怎么转换_十六进制

图片画得有点丑别在意

而十进制转换为二进制就刚好相反
将十进制数除以二取余,余数从下到上写下来就是对应的二进制数。

android 二进制转图片显示 二进制图片怎么转换_android 二进制转图片显示_02

二进制和八进制的转换

二进制转换成八进制

比如 1001010,我们首先要将二进制数每三位为一体,不足的部分补0

即为:001 001 010,然后方法与转十进制类似:

三个部分都乘以二的升次方,即为

android 二进制转图片显示 二进制图片怎么转换_android 二进制转图片显示_03

android 二进制转图片显示 二进制图片怎么转换_十进制_04

android 二进制转图片显示 二进制图片怎么转换_android 二进制转图片显示_05


然后三个得数从上到下写,就是112.

八进制转二进制方法与十进制相同,除以二全部取余数。

二进制和十六进制的转换
二进制转十六进制方法与八进制类似,但不同点在于要拆成四位为一体,其余相同。而十六进制转二进制也是全部除以二然后取余数。

八进制、十六进制与十进制的转换
有间接方法:先转成二进制,再进行对应的转换。
直接方法:
在之前转二进制的过程中,都是除以二取余数。而十进制要转成八进制或十六进制就是将十进制数除以对应的进制数(即转八进制则除以八,转十六进制则除以十六),然后再依旧从下往上取余数。
而八进制数和十六进制数要转成十进制数也很简单,将其每一位乘以对应进制数的次方即可。

android 二进制转图片显示 二进制图片怎么转换_十进制_06


android 二进制转图片显示 二进制图片怎么转换_八进制_07


八进制和十六进制的转换

八进制转十六进制要么先转成二进制再转换,要么先转成十进制再转换。

十六进制中字母的定义
因为数字只有0-9,而十六进制需要有0-15,所以引入了字母A-F来表示10-15,进行相关运算时将对应的字母换成数字即可。