十进制 二进制 十六进制 八进制
注:本文的进制转换只针对整(正)数。文本中不过多介绍专业术语,只为本人能看懂,容易理解。不接受反驳,咬我啊!
十进制
十进制由: 0到9,10个数字组成。
关键:逢10进一位
我们现实生活中,数字都是用 十进制 来表示的,就不说了。
二进制(BIN)
二进制由: 0到1,2个数字组成。
关键:逢2进一位
如何将 十进制 数转成 二进制呢?
方法为:十进制数 除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为1或为0为止。然后从后往前取余数,得到最终的二进制。过程看下图吧
如将 十进制数 80 转成 二进制?
所以 80 用二进制表示就是:1010000
那如何将 二进制 转成 十进制数呢?
以80 的二进制 1010000 为例,看下图:
将 十六进制数 转换为 二进制数:
每一位十六进制数都转换为四位二进制数。
例如,十六进制数-> 6E 要转换为 二进制数。每位十六进制数根据8 4 2 1码。
6 E
=0110 1110
将 二进制数 转换为 十六进制数:
第1步,将 二进制数 进行分组,从右到左分组,四位一组,不足四位在前面补0
第2步,四位一组的二进制数 转换为 一位十六进制数。每组根据8 4 2 1码。
例如,二进制数->1101110 要转换为 十六进制数
(1)分组得到两组:0110 1110
(2)四位一组的二进制数 转换为 一位十六进制数分别为:6 E
所以二进制数->1101110 转换为 十六进制数得:6E
将 八进制数 转换为 二进制数:
每一位八进制数都转换为 三位二进制数。
例如,八进制数->156 要转换为 二进制数。每位八进制数根据4 2 1码。
1 5 6
=001 101 110
将 二进制数 转换为 八进制数:
第1步,将 二进制数进行分组,从右到左分组,三位一组,不足三位在前面补0
第2步,三位一组的二进制数转换为一位八进制数。每组根据4 2 1码。
例如,二进制数->1101110 要转换为 八进制数
(1)分组得到三组:001 101 110
(2)三位一组的二进制数转换为一位八进制数分别为:1 5 6
所以二进制数->1101110 转换为 八进制数得:156
十六进制(HEX)
十六进制由: 0到9,和 A B C D E F ,10个数字 和 6个字母组成。
而 A代表10 B代表11 C代表12 D代表13 E代表14 F代表15
关键:逢16进一位
说明:有些语言中以 0x 或 x 开头的代表十六进制
分组:从右到左分组,4位一组得到1位十六进制数。不足4位,在前面补0。
那如何将 十进制 数转成 十六进制呢?
如将 十进制数 80 转成 十六进制?
第一步,先将 80 转成 二进制先。
第二步,将 80 转成 二进制后的数,进行分组,4位一组,从右到左分组,不足4位时,在前面补0。然后根据 “8 4 2 1 ”法进行每组相加得到一位十六进制数。
第一步: 80 的二进制是: 1010000
第二步:分组,4位一组,得到两组:0101 0000
那如何将 十六进制 转成成 十进制数呢?
如 80 转成十六进制是 50,现在需要将十六进制 50 转换成十进制数?
如何将 十进制 数转成 十六进制的第二种方法?
过程跟 十进制 转成 二进制 的过程差不多,转成 二进制 是不断除2,而转成 十六进制 是不断除16即可。
还是以 80为例,转成 十六进制:
八进制(OCT)
八进制由: 0到7,8个数字组成。
关键:逢8进一位
说明:有些语言中以 0o 或 o 或 0 开头的代表八进制
分组:从右到左分组,3位一组得到1位八进制数。不足3位,在前面补0。
那如何将 十进制 数转成 八进制呢?
如将 十进制数 80 转成 八进制?
第一步,先将 80 转成 二进制先。
第二步,将 80 转成 二进制后的数,进行分组,3位一组,从右到左分组,不足3位时,在前面补0。然后根据 “4 2 1 ”法进行每组相加得到一位八进制数。
第一步: 80 的二进制是: 1010000
第二步:分组,3位一组,得到三组:001 010 000
那如何将 八进制 转成成 十进制数呢?
如 80 转成八进制是 120,现在需要将八进制 120 转换成十进制数?
如何将 十进制 数转成 八进制的第二种方法?
过程跟 十进制 转成 二进制 的过程差不多,转成 二进制 是不断除2,而转成 八进制 是不断除8即可。
还是以 80为例,转成 十六进制: