当前位置: 老葡京网站娱乐 > 编程语言 > Java > 正文

Java编程那些事儿7——进制的概念(2)

时间:2010-02-27 csdn博客 陈跃峰

老葡京网站娱乐 www.sdguanhua.com 下面是二进制的一些基本运算结果:

l加法运算
     0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10
l减法
0 – 0 = 0
0 – 1 = -1
1 – 0 = 1
1 – 1 = 0
l乘法
0 × 0 = 0
0 × 1 = 0
1 × 0 = 0
1 × 1 = 1
l除法
0 / 0  无意义
0 / 1 = 0
1 / 0  无意义
1 / 1 = 1

以下是一些符合的表达式:

110 + 111 = 1101

这些基本的运算结构在实际开发中一般不会直接用到,但是通过这些内容可以加深对于二进制概念的理解。

1.2.2 二进制和十进制之间的转换

由于计算机内部的数据是以二进制进行表达的,而十进制又是日常生活中最常用的进制,所以它们之间经常需要进行转换。下面介绍一下转换的方式。

1.2.2.1 十进制转换为二进制

十进制整数转换为二进制有三种方法,分别是除二取余、计算器转换和经验法。十进制小数的转换方法最后做简单的介绍。

1.除二取余法

除二取余法是转换时的最基本方法,也是最通用的方法。规则为:使用十进制和2去除,取每次得到的商和余数,用商继续和2相除,直到商为零为止,第一次得到的余数作为二进制的低位,最后一次得到的余数作为二进制的高位,由余数组成的数字就是转换后二进制的值。例如十进制的13转换为二进制的计算步骤如下:

商      余数
     13/2=6      1
6  /2=3      0
3  /2=1      1
1  /2=0      1
          则计算的最终结果就是1101。
2.计算器转换

Windows操作系统中的计算器也可以很方便的实现进制之间的转换。在程序菜单中附件子菜单中打开计算器,从打开的计算器的查看菜单中,选择“科学型”,输入你要转换的十进制的数字,例如13,然后界面上数字显示框西侧的“二进制“,则转换后的数值就直接显示在计算器中。

3.经验法

对于二进制熟悉以后,那么计算十进制对应的数字可以通过一些基本的数学变换来实现,在使用经验法以前,必须熟记2的0-10次方对应的十进制的值,依次是:

1,2,4,8,16,32,64,128,256,512,1024

则转换一些特殊的数字时可以极大的提高转换速度,例如数字65,则可以这样转换:

65 = 64 + 1

64对应的二进制形式为1000000

1对应的二进制形式为1

则65的二进制形式为1000001

这个只适合转换一些特殊的数字,适应性没有除二取余法广泛。