Java基础(进制转换-)

进制概述:

进制也就是进位计数制,是人为定义的带进位的计数方法(有不带进位的计数方法,比如原始的结绳计数法,唱票时常用的“正”字计数法,以及类似的tally mark计数)。 对于任何一种进制---X进制,就表示每一位置上的数运算时都是逢X进一位。 十进制是逢十进一,十六是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。

例如:一周有七天,七进制,一年有十二个月,十二进制

十进制的由来

人类算数采用十进制,可能跟人类有十根手指有关。

二进制的由来:

德国著名的数学家和哲学家莱布尼兹,对帕斯卡的加法机很感兴趣。于是,莱布尼兹也开始了对计算机的研究。莱布尼兹也是第一个认识到二进制记数法重要性的人,并系统地提出了二进制的运算法则。二进制对200多年后计算机的发展产生了深远的影响。他于1716年发表了《论中国的哲学》一文,专门讨论八卦与二进制,指出二进制与八卦有共同之处。

八进制的由来:

有人提出,原始印欧语系“九”这个词可能与派为“新”字。在此基础上,有人猜测,原始印欧语系使用一个八进制数系统。

1668年约翰·威尔金斯的一篇文章中向一个真正的系统和哲学语言提出使用8为基数,而不是10,因为二分法将数字分为两部分是最自然的方式,据此,这个数字能与下一个数值相统一。

十六进制的由来:十六进制主要是为了缩短数据的长度,便于记忆和输入。一个十六进制数字可以代表4位二进制数字。
十六进制用0-9,A-F,代表0-15。

总结:不同进制表示一个数据的形式特点,进制越大表现形式原长。

二进制的表现形式:

由0--1组成,以0b开头。(JDK1.7版本可以表示二进制了)。

例如:3的二进制表示形式:0b11

八进制的表现形式:

由0--7组成,以0开头

列如:9的八进制表示形式:011

十六进制的表示形式:由1--9,a,b,c,d,e,f(大小写都可以)以0x开头

任意进制转换十进制公式:(必须掌握)

  1. 系数:就是每一位上的数据
  2. 基数:x进制,基数就是x
  3. 权:在右边从0开始到对应的编号即该位的权
  4. 结果把系数*基数的权次幂相加即可。

图解:

十进制转换任意进制(公式):

除基倒去余

 十进制转换十进制:1234

基数=10

1234/10=123……余4

123/10=12………余3

12/10=1…………余2

1/10=0……………余1(1除10除不尽所以余1)

结果(除基倒取余)=1234

十进制转换二进制:15

基数:2

15/2=7…………余1

7/2=3……………余1

3/2=1……………余1

1/2=1……………余1

二进制表达式:0b1111(倒取余)

十进制转换八进制:160

基数:8

160/8=20…………余0

20/8=2……………余4

2/8=0………………余2

八进制表达式:0240(倒取余)

十进制转换十六进制:1600

基数:16

1600/16=100…………余0

100/16=6………………余4

6/16=0…………………余6

十六进制表达式:0x640

你不会的东西,觉得难的东西,一定不要躲。先搞明白,后精湛,你就比别人优秀了。因为大部分人都不舍得花力气去钻研,自动淘汰,所以你执着的努力,就占了大便宜。奋斗就是每一天都很难,可一年比一年容易。不奋斗就是每一天都很容易,可一年比一年越难。怕吃苦的人吃苦一辈子,不怕吃苦的人吃苦一阵子。拼一个春夏秋冬,赢一个无悔人生
原文地址:https://www.cnblogs.com/ahJava/p/9757846.html