Java中的进制

第一位为符号位:0表示正 1表示负
1111 1111 0111 1111
-127 -0 0 127
-128 127
10000000=-|10000000|=-|01111111|=-|00000000|=-0

正数的源码、反码、补码都是本身
负数的源码自身、反码(按位取反)、补码(按位取反+1)
源码计算:1-1=1+(-1)=00000001+10000001=10000010=-2
反码计算:1-1=1+(-1)=00000001+11111110=11111111=10000000=-0
补码计算:1-1=1+(-1)=00000001+11111111=00000000=0
47
0010 1111
0010 1111
0010 1111
-47
1010 1111
1101 0000
1101 0001

进制转换:二进制 八进制 十进制 十六进制
5638=510^3 + 610^2 + 310^1 + 810^0
基数:*进制 权:基数^(位数-1)

十进制转二进制:十进制数除2取余
基数:2 权:2^(位数-1)
150十进制 --> 10010110二进制
137 10001001
256 100000000
354 101100010

二进制转八进制:三位二进制按权展开相加得一位八进制
基数:8 权:8^(位数-1)
10010110二进制 --> 226八进制
11001000 310
110101 65
1011101 135
524八进制 101010100

二进制转十六进 制:与二进制转八进制相似,八进制是取三合一,
十六进制是取四合一
基数:16 权:16^(位数-1)
10010110二进制 --> 96十六进制
十进制: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
十六进制:0 1 2 3 4 5 6 7 8 9 a b c d e f
100101100 12c
100111001 139
1001010 4a
10010111100 4bc

十进制转换为八进制或者十六进制:
1.间接法:十进制转换为二进制,二进制转换为八进制或者十六进制
2.直接法:按照十进制转换为八或者十六进制
150十进制 --> 226八进制 --> 96十六进制
521 1011 209
653 1215 28d
412 634 19c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值