JAVA开发之 18-进制
JAVA开发之 18-进制
一、概念
进位制/位置计数法是一种记数方式,故亦称进位记数法/位值计数法,可以用有限的数字符号代表所有的数值。可使用数字符号的数目称为基数(en:radix)或底数,基数为n,即可称n进位制,简称n进制。现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行记数。
二、进制一览
1、二进制数
二进制数有两个特点:它由两个基本数字0,1组成,二进制数运算规律是逢二进一。
为区别于其它进制数,二进制数的书写通常在数的右下方注上基数2,或加后面加B表示。
例如:二进制数10110011可以写成(10110011)2,或写成10110011B,对于十进制数可以不加注.计算机中的数据均采用二进制数表示,这是因为二进制数具有以下特点:
1) 二进制数中只有两个字符0和1,表示具有两个不同稳定状态的元器件。例如,电路中有、无电流,有电流用1表示,无电流用0表示。类似的还比如电路中电压的高,低,晶体管的导通和截止等。
2) 二进制数运算简单,大大简化了计算中运算部件的结构。
二进制数的加法和乘法运算如下:
0+0=0 0+1=1 1+0=1 1+1=10
0×0=0 0×1=0 1×0=0 1×1=1
但是,二进位制有个致命的缺陷,就是数字写出来特别长,如:把十进位制的100000写成二进位制就是11000011010100000,所以计算机内还有两种辅助进位制:八进位制和十六进位制。二进位制写成八进位制时,长度只有二进位制的三分之一,把十进位制的100000写成八进位制就是303240。十六进位制的一个数位可代表二进位制的四个数位。这样,十进位制的100000写成十六进位制就是186A0。
2、四进制
四进制是以4为底数的进位制,以 0、1、2 和 3 四个数字表示任何实数。 四进制与所有固定底数的记数系统有着很多共同的属性,比如以标准的形式表示任何实数的能力(近乎独特),以及表示有理数与无理数的特性。有关属性的讨论可参考十进制和二进制,下面是十进制0至15与四进制与二进制的互换。
3、七进制数
七进制是以7为底数的记数系统。使用数字0-6。
七进制小数通常都是循环小数,除非分母是七的倍数。有些小数可以用有限个数字来表示,如:
在七进制中:π = 3.0663651432… e = 2.5012410654…
加法运算举例:
131+245=406 2、406+666=1405 3、1405+3456=4534数制转换举例:
十进制的131转化成七进制数131(十)=18*7+5=(2*7+4)*7+5=2*7^2+4*7^1+5=245(七)2七进制数245转化成十进制数245(七)=2*7^2+4*7^1+5=2*49+4*7+5=98+28+5=131(十)
七进制的一个好处是,3.1 (22/7)是圆周率的一个很好的近似值。
Function Cvn 10 to 7(num As Long) As LongDim rst As VariantDo While Int(num / 7) <> 0 rst = (num Mod 7) & rst num = (num - (num Mod 7)) / 7LoopCvn10to7 = num & rstEnd Function
4、八进制数
由于二进制数据的基R较小,所以二进制数据的书写和阅读不方便,为此,在小型机中引入了八进制。八进制的基R=8=2^3,有数码0、1、2、3、4、5、6、7,并且每个数码正好对应三位二进制数,所以八进制能很好地反映二进制。八进制用下标8或数据后面加O表示 例如:二进制数据 ( 11 101 010 . 010 110 100 )2 对应 八进制数据 ( 3 5 2 . 2 6 4 )8或352.264O.
5、十进制数
人们通常使用的是十进制。它的特点有两个:有0,1,2….9十个基本数字组成,十进制数运算是按“逢十进一”的规则进行的.
在计算机中,除了十进制数外,经常使用的数制还有二进制数和十六进制数.在运算中它们分别遵循的是逢二进一和逢十六进一的法则.
6、十二进制
十二进制 长度单位一英尺等于12英寸,一先令等于12便士,就连足球比赛罚点球的英制长度也是12码。
十二进制来源:传说是十个手指头加两只脚。这是过去规定的,20世纪开始规定一打dozen为12个。
规定一打12个是一种12进制。
瑞典历史上有一位有远见的国王就说过,从日常应用的角度看,十二进制比十进制更方便。他生前曾设想过,在他管辖的范围内取消十进制,而代之以十二进制。
直到2015年还能见到十二进制,比如钟表转一圈12小时等等。
有时十进制中的10/11在十二进制中也用A/B表示。
7、十六进制
由于二进制数在使用中位数太长,不容易记忆,所以又提出了十六进制数
十六进制数有两个基本特点:它由十六个字符0~9以及A,B,C,D,E,F组成(它们分别表示十进制数10~15),十六进制数运算规律是逢十六进一,即基R=16=2^4,通常在表示时用尾部标志H或下标16以示区别。
例如:十六进制数4AC8可写成(4AC8)16,或写成4AC8H。
8、六十进制
古代人由于生产劳动的需要,要研究天文和历法,就牵涉到时间和角度了。因为历法需要的精确度较高,时间的单位小时,角度的单位度都嫌太大。必须进一步研究他们的小数。它们的小数都具有这样的性质︰使1/2,1/3,1/4,1/5,1/6等都能成为他的整数倍。以1/60作为单位,就正好具有这个性质。譬如︰1/2等于30个1/60,1/3等于20个1/60,1/4等于15个1/60…这种小数的进位制在表示有些数时很方便。例如常遇到的1/3,在十进位制中要变成无限小数,但在这种进位制中就是一个整数。
JAVA开发之 18-进制相关教程