首页 > 代码库 > 二进制

二进制

人类惯常使用十进制,莱布尼茨提出了可供计算机内部使用的二进制,但是据传莱布尼茨提出二进制的灵感是来自中国的八卦图。

一、进制的转换:

十进制     D

二进制     B

八进制     O

十六进制   H

 

进制转换有两种:

 任意进制转换为十进制:按权展开为多项式

         101.01B = 1*2^2  +  0*2^1  +  1*2^0  +  0*2^(-1)   +  1*2^(-2)

 十进制转换为任意进制:

   (1)整数:除K取余法   余取倒

(2)小数:乘K取整法   整取正

 

二、位运算

 

 

         (1)A = A^B

B = A^B  <=>  A^B^B = A

A = A^B  <=>  A^B^B = A

 

 
 
 
(2)右移相当于操作数除以2

 

  
 
 
 
 
 
 (3)原码反码补码

 

(4)负数的右移运算
               1.右移之后得到二进制数,此为补码
               2.将所得到的二进制数补码加一得到反码,再取反得到原码
               3.把得到的原码换算成十进制数即为所得

 
 
三、 Java内置的进制转换

(1)java 数据类型

 

(2)0xff 表示八个一
               数据类型  转化   字节  
                 32bit         4byte

 

(3) 字符串 转换  字节数组

 

二进制