当前位置: 首页 > 编程语言 > Java > 正文

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

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

1.2进制的概念

因为不可能为每个数值都创造一个符号,所以需要用基本数字组合出复合的数值,这样就有了进制的概念。

其实所有进制都是人为的创造,都是用来计数方便的。现在最常用的进制是十进制,当然其它的进制也在使用中。例如“半斤八两”这个成语,就反映了古代一斤等于十六两的概念,也就是十六进制计数方式。

计算机编程中常用的进制有二进制、八进制、十进制和十六进制,十进制还是最主要的表达形式。在编程中,大家书写的数值默认为十进制。

对于进制,有两个最基本的概念:基数和运算规则。

l基数

基数指一种进制中组成的基本数字,也就是不能再拆分的数字。例如十进制是0-9,二进制是0和1,八进制是0-7,十六进制是0-9,A-F(大小写均可)。或者可以简单的这样记忆,假设是n进制的话,基数就是[0,n-1]的数字,基数的个数和进制值相同,十进制有十个基数,依次类推。

l运算规则

运算规则就是进位或借位规则,这个类似于一般计算机书籍中位权的概念,例如对于十进制来说,该规则是“满十进一,借一当十”,也就是低位的数字满十了向高位进一,从高位借到的一,相当于低位上的十。其它的进制也是这样,对于二进制来说,就是“满二进一,借一当二”,八进制和十六进制也是这样。

在数学上表示一个数字是几进制,通常使用如下格式:[数值]进制数,例如[10]2 表示二进制数值10。

1.2.1 二进制

二进制是计算机内部数据表示的形式,所以学习计算机编程必须熟悉二进制。熟悉二进制有以下几个用途:

l更容易理解计算机的数据存储方式

计算机内部的很多转换,例如数据类型之间的强转,都可以用二进制解释最终的结果的值。

l二进制的运算速度高

二进制的运算速度比十进制高的多。例如求2的n次方,通过移位实现的效率比数学方法高效。

l使用二进制数值进行数据存储

以二进制的形式存储数值,一个是比较节约资源,可以使用二进制的位来存储信息,例如常见的硬件控制信息,都是二进制的形式进行提供的。

如前所述,二进制包含0和1两个基数,运算规则是“满二进一,借一当二”,下面简单的介绍一下二进制的计数方式。

例如十进制的0-9用二进制进行表达,则依次是:

0,1,10,11,100,101,110,111,1000,1001

说明:数值之间使用逗号进行间隔。