【Java学习笔记】进制与进制转换
进制与进制转换
一、进制介绍
-
二进制:0、1,满 2 进 1,以 0b 或 0B 开头。
-
十进制:0-9,满 10 进 1。
-
八进制:0-7,满 8 进 1,以数字 0 开头表示。
-
十六进制:0-9 及 A(10)-F(15),满 16 进 1,以 0x 或 0X 开头表示。此处的 A-F 不区分大小写。
二、进制转换
-
第一组:
-
特点:各进制和十进制的转换
-
(1) 二进制转十进制
-
(2) 八进制转十进制
-
(3) 十六进制转十进制
-
-
方法:从末尾开始,位数值乘以进制数的位数减一次方,末尾的位数设为 0,依次相加求得结果
-
例子:二进制
101
转十进制-
计算过程:1*
2的0次方
+ 0*2的1次方
+ 1 *2的2次方
= 5 -
0b101
=5
-
-
第二组:
-
特点:十进制转各进制
-
(1) 十进制转二进制
-
(2) 十进制转八进制
-
(3) 十进制转十六进制
-
-
方法:除 n 取余法,逆序拼接
-
注意:对于二进制,当成是一个字节,即 8 各 bit 位,如果不足八位,在前面补 0
-
第三组:
-
特点:二进制转各进制
-
(1) 二进制转八进制
-
(2) 二进制转十六进制
-
-
方法:由二进制的特点和八进制和十六进制的进位特点可以发现其中的规律
-
八进制:二进制中的每 3 位表示八进制中的1 位
-
十六进制:二进制中的每 4 位表示十六进制中的1 位
-
-
第四组:
-
特点:
-
各进制转二进制
-
本质其实是二进制转各进制的逆运用
-
(1) 八进制转二进制
-
(2) 十六进制转二进制
-
-
方法:把八进制或者十六进制中的每一位表示的十进制数写出来,之后把这个十进制数转换成二进制数