4、进制

1 十进制转换二进制
   eg57 转为二进制
   1.1 方法一 2 
      57/2 = 28....1
      28/2 = 14....0
      14/2 =  7....0 
      7/2  =  3....1
      3/2  =  1....1
      1/2  =  0....1 (商为0停止)
      然后反过来111001
   1.2 方法二找最大的2的次方
      000000
      最接近57最大的2的次方是2(6-1)次方32,那第6个位置是1(100000), 57 - 32 = 25
      最接近25最大的2的次方是2(5-1)次方16,那第5个位置是1(110000)25 - 16 = 9
      最接近9最大的2的次方是2(4-1)次方8那第4个位置是1(111000),9-8 = 1
      最接近1最大的2的次方是2(1-1)次方1那第1个位置的是1(111001),1-1 = 0(结束)
      所以是111001
      
2 二进制转换十进制
   1110012^(6-1) + 2^(5-1) +2^(4-1) + 2(1-1) = 32+16+8+1 = 57
   
3 八进制适用于12位于36位计算机操作系统标志的开头用0表示0-7的数字表示

4 十六进制0-9ABCDEF表示标志的开头用0x表示
      
   十进制                二进制               八进制                十六进制
      
      0                   0000                    0                   0
     1                   0001                    1                   1
     2                   0010                    2                   2
     3                   0011                    3                   3        
     4                   0100                    4                   4
     5                   0101                    5                   5
     6                   0110                    6                   6
     7                   0111                    7                   7
     8                   1000                    10                  8
     9                   1001                    11                  9
     10                  1010                    12                  A
     11               	 1011                    13                  B
     12                	 1100                    14                  C
     13                  1101                    15                  D  
     14                  1110                    16                  E
     15                  1111                    17                  F

     
5 位运算     
   运算符          运算          实例
&           与运算             6&3=2
    |           或运算             6|3=7
    ^           异或运算         6^3=5
     ~             反码          ~6=-7
    <<       左移          3<<2=12   3*2*2=12
    >>       右移          3>>1 = 1   3/2 =1
    <<<          无符号移         3>>>1 = 1   3/2 =1
     
     5.1 & :两个都是1才是1否则为0   0010 &1111 = 0010
      5.1.1 作用1清零如果想让一个单元为0即使其全部二进制为0只要与一个各位都为0的数值相与结果为0
      5.1.2 作用2取一个数中指定位X=10101110X的第4,X & 0000 1111 = 0000 1110即可得到
     5.2 | :一个是1 就是1     1001 & 0110 = 1111
      5.2.1 作用1将某位变为1 10001 0001 2个变为1  10001 0001 | 0000 0010 = 10001 0011
     5.3 ^ 两个相应位为(值不同),则该位置为1,否则为0 0^0= 0  0^1=1 1^0=1 1^1=0
      5.3.1:用途1使特定位翻转找一个数对应X要反转的各位该数对应位为1其余为0此数与X对应位异或即可
           例如X=10101110,使X4位反转X^0000 1111 = 10100001
     ....
     
     
6 jdk中进制转换
      //十进制转换其它进制
      Integer.toBinaryString(122); //2进制转换,1111010
      Integer.toOctalString(122); //8进制转换,172
      Integer.toHexString(122); //16进制转换,7a
     
      //其他进制转换十进制
      Integer.parseInt("1111010",2) //122
      Integer.parseInt("172",8) //122
      Integer.parseInt("7a",16) //122
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值