进制转换

1.二进制转十进制:

  例如:1101.01(2)=1*20+0*21+1*22+1*2+0*2-1+1*2-2=1+0+4+8+0+0.25=13.25


2.十进制转二进制:

   逢2进1,

1->1,

2->10,

7->111  ==>  7/2=3(余1),3/2=1(余1),1/2=0(余1),从右到左(从下到上)==》111

8->1000 ==> 8/2=4(余0),4/2=2(余0),2/2=1(余0),1/2=0(余01),从右到左(从下到上)==》1000

3.反码:

    正数的反码是其本身

负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.

+1 = 00000001 原 = 00000001反

-1 = 10000001 原 = 11111110 反


3. 补码

补码的表示方法是:

正数的补码就是其本身

负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)

[+1] = [00000001] = [00000001] = [00000001]

[-1] = [10000001] = [11111110] = [11111111]

对于负数, 补码表示方式也是人脑无法直观看出其数值的. 通常也需要转换成原码在计算其数值.


附:Java ~ (取反) 即 补码  正数的取反为 -(X+1)  负数的取反为 X-1

     Java ^ 异或  两个数二进制对齐,相同为0,相异为1   如:2^3 = 00000010 ^ 00000011 = 00000001

     Java << 左移 2 << 2 = 4   ==> 10 --> 100 = 4

     Java >> 右移 2 >> 2 = 1  ==> 10 --> 1 = 1 

     Java & 位与,都为1则为1,否则为0,如:1&0=0,0&0=0,1&1=1




   

   

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值