进制与进制之间的转化

关于进制

一.所有数字在计算机底层都以二进制形式存在。
二. 对于整数,有四种表示方式:
1.二进制(binary):0,1 ,满2进1.以0b或0B开头。
2.十进制(decimal):0-9 ,满10进1。
3.八进制(octal):0-7 ,满8进1. 以数字0开头表示。
4.十六进制(hex):0-9及A-F,满16进1. 以0x或0X开头表示。此处的A-F不区分大小写。 如:0x21AF +1= 0X21B0
进制与进制之间的转化
进制与进制之间的转化

二进制

1.Java整数常量默认是int类型,当用二进制定义整数时,其第32位是符号位; 当是long类型时,二进制默认占64位,第64位是符号位
2.二进制的整数有如下三种形式:
①原码:直接将一个数值换成二进制数。最高位是符号位
②负数的反码:是对原码按位取反,只是最高位(符号位)确定为1。
③负数的补码:其反码加1。
进制与进制之间的转化
【注意:计算机底层都是使用的数值的补码保存数据的】
3.计算机以二进制补码的形式保存所有的整数。
①正数的原码、反码、补码都相同
②负数的补码是其反码+1
进制与进制之间的转化
【注意:控制台打印出来的都是十进制的数字】

十进制转二进制

除二取余的逆
如:
进制与进制之间的转化

进制间的转化

  1. 十进制 二进制互转
    ①二进制转成十进制 乘以2的幂数
    ②十进制转成二进制 除以2取余数

  2. 二进制 八进制互转

  3. 二进制 十六进制互转

  4. 十进制 八进制互转

  5. 十进制 十六进制互转
    进制与进制之间的转化

    二进制转化为八进制(或十六进制)

进制与进制之间的转化

八进制(或十六进制)转化为二进制

进制与进制之间的转化