Java 第一阶段建立编程思想 【进制】
- 1. 进制
- 2. 二进制转十进制
- 3. 八进制转十进制
- 4. 十六进制转十进制
- 5. 十进制转二进制
- 6. 十进制转八进制
- 7. 十进制转十六进制
- 8. 二进制转八进制
- 9. 二进制转十六进制
- 10. 八进制转二进制
- 11. 十六进制转二进制
- 12. 原码、反码、补码
- 13. 位运算符
1. 进制
对于整数有四种表示方式
- 二进制: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开头
2. 二进制转十进制
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以2的(位数-1)次方,然后求和。
如:0b1011:1 * 21-1 + 1 * 22-1 + 0 * 23-1 + 1 * 24-1 = 1 + 2 + 0 + 8 = 11
3. 八进制转十进制
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以8的(位数-1)次方,然后求和。
如:0234:4 * 81-1 + 3 * 82-1 + 2 * 83-1 + 0 * 84-1 = 4 + 24 + 128 + 0 = 156
4. 十六进制转十进制
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以16的(位数-1)次方,然后求和。
如:0x23A:10 * 161-1 + 3 * 162-1 + 2 * 163-1 = 10 + 48 + 512 = 570
5. 十进制转二进制
规则:将该数不断除以2,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制。
如:34:0B00100010
6. 十进制转八进制
规则:将该数不断除以8,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制。
如:131:0203
7. 十进制转十六进制
规则:将该数不断除以16,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制。
如:237:0xED
8. 二进制转八进制
规则:从最低位开始,将二进制数每三位一组,转成对应的八进制数即可。
如:0b11010101:0325
9. 二进制转十六进制
规则:从最低位开始,将二进制数每四位一组,转成对应的十六进制数即可。
如:0b11010101:0xD5
10. 八进制转二进制
规则:将八进制数每1位,转成对应的一个3位的二进制数即可。
如:0237:0b10011111
11. 十六进制转二进制
规则:将十六进制数每1位,转成对应的一个4位的二进制数即可。
如:0x23B:0b001000111011
12. 原码、反码、补码
- 二进制的最高位是符号位:0表示正数,1表示负数
- 正数的原码、反码、补码都一样(三码合一)
- 负数的反码=它的原码符号位不变,其它位取反(0->1,1->0)
- 负数的补码=它的反码+1,负数的反码=负数的补码-1
- 0的反码、补码都是0
- java没有无符号数,换言之,java中的数都是有符号的
- 在计算机运算的时候,都是以补码的方式来运算的
- 当我们看运算结果的时候,要看它的原码
13. 位运算符