JavaSE Java中的二进制

二进制与十进制之间的转换

2^72^62^52^42^32^22^12^0
1286432168421

原码、反码、补码

对一个正数来说:二进制原码、反码、补码是同一个

对一个负数来说:在计算机中,负数都用补码表示

eg:byte i=-1

原码1000 0001
反码1111 1110(符号位不变,其他位取反)
补码1111 1111(反码+1)

例子

Java中

byte b=(byte)150; 结果是?

整型150=0b00000000 00000000 00000000 10010110

强制转换去掉前三个字节成 1001 0110(此时为是补码,要反求原码)

反码:1001 0101(补码-1)

原码:1110 1010(符号位不变,其他位取反=-106)

64+32+8+2=106

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值