一、进制种类
二进制:0-1,满2进1 1+1=10 11+1=100 111+1=1000。在程序中以0b/0B开头标记一个二进制数字(从JDK1.7开始) 0b1001 0b00101
八进制:0-7,满8进1 7+1=10 27+1=30 77+1=100 要求以0开头标记一个八进制数字 045 053
十进制:0-9,满10进1 Java中数字默认就是十进制
十六进制:0-9,A-F,满16进1 9+1=a a+1=b f+1=10 39+1=3a 3f+1=40 99+1=9a 9f+1=a0 af+1=b0 ff+1=100要求以0x/0X作为开头标记 0xB3
二、进制的转换
十进制转换为二进制:将一个十进制数字不断的除以2,然后获取余数,将余数倒序排列,排列之后的结果就是对应的二进制。
整数部分除2逆取余,小数部分乘2顺取整。
二进制转化为十进制:从这个二进制数字的最低位次开始,然后每一位乘以当前的2的位次次幂,最后求和。
十进制转化为其他进制:十进制数字向哪个进制转化那么就除以对应的进制,然后取余数,将余数倒排
其他进制转化为十进制:从这个进制的数字的低位次开始,然后按位次乘以当前的进制的位次次幂,最后求和
二进制转化为八进制:从二进制数字的低位次开始,每三位划分为一组产生一个八进制数字,最高位如果不足三位,补0。最后将产生的八进制数字排列 — 三变一
八进制转化为二进制:每一位八进制数字产生3位二进制数字,如果不足三位,补0. — 一变三
十六进制和二进制之间的转换类比八进制和二进制的转换