对于整数,有四种表示方式:
二进制:0,1,满2进1.以0b或0B开头。
十进制:0-9,满10进1.
八进制:0-7,满8进1.以数字0开头表示。0351
十六进制:0-9及A-F,满16进1.以0x或0X开头表示。此处的A-F不区分大小写。0XE9
源码、反码、补码
所有数字在计算机底层都以二进制形式存在。
计算机以补码的形式保存所有的整数。
正数:
原码、反码、补码都相同。三码合一
负数:
原码:直接将一个数值换成二进制数。
反码:是对原码按位取反,只是最高位(符号位)确定为1。各个位除符号位外取反。
补码:反码+1。
Java整数常量默认是int类型,当用二进制定义整数时,其第32位是符号位;当是long类型时,二进制默认占64位,第64位是符号位。
十进制=>二进制:除2取余数的逆
进制的基本转换:
十进制 二进制互转
二进制转成十进制 乘以2的幂数
十进制转成二进制 除以2取余数的逆
二进制 八进制互转:
二进制转成八进制 二进制每3个一个位。0351
八进制转成二进制 把除开头的0以外的其他数字拆成三位的二进制
二进制 十六进制互转:
二进制转成十六进制 二进制每4个一个位。0XE9
十六进制转成二进制 把除开头的0X/0x以外的其他数字拆成四位的二进制
十进制 八进制互转:先和二进制互转,再用二进制和另一个互转
十进制 十六进制互转:先和二进制互转,再用二进制和另一个互转