进制的奥秘
原码、反码、补码
所有数字在计算机底层都以二进制形式存在。
计算机以补码的形式保存所有的整数。
补码原则
- 正数的原码、反码、补码都相同
- 负数的补码是其反码加1(对应正数的原码右起第一个不为0的保留,其余全取反)
Java整数常量默认是int类型,当用二进制定义整数时,其第32位是符号位;当是long类型时,二进制默认占64位,第64位是符号位
对于整数,有四种表示方式
- 二进制:0,1 ,满2进1.以0b或0B开头。
- 十进制:0-9 ,满10进1
- 八进制:0-7 ,满8进1. 以数字0开头表示
- 十六进制:0-9及A-F,满16进1. 以0x或0X开头表示。此处的A-F不区分大小写。
(1)如:0x21AF +1= 0X21B0
进制间的转化
1、进制的基本转换
十进制-->二进制
例如:150(10->2)

十进制转八进制
例如:100(10-->8)

十进制转十六进制
例如:
100(10-->16)64
十进制转换成任何进制,除以相应的进制数,将余数倒排
任何进制数转换成十进制数,用相应位上的数乘以权(权=进制数的幂)
0x63 --> 十进制?
二进制转八进制:每三位转换成一个八进制数
八进制转二进制:一个八进制数转换成三位二进制数
二进制和十六进制:二进制转换成十六进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位
八进制和十六进制:先转换成二进制,再转成十六进制

浙公网安备 33010602011771号