JAVA基礎前篇——進位制篇
阿新 • • 發佈:2018-12-18
什麼是進位制?
進位制也就是進位制,是人們規定的一種進位方法。 對於任何一種進位制---X進位制,就表示某一位置上的數運算時是逢X進一位。
十進位制是逢十進一, 十六進位制是逢十六進一, 二進位制就是逢二進一,以此類推,x進位制就是逢x進位。
十進位制的由來
人類天然選擇了十進位制。 由於人類解剖學的特點,雙手共有十根手指,故在人類自發採用的進位制中,十進位制是使用最為普遍的一種。成語“屈指可數”某種意義上來說描述了一個簡單計數的場景,而原始人類在需要計數的時候,首先想到的就是利用天然的算籌——手指來進行計數。 十進位制編碼幾乎就是數值本身。 數值本身是一個數學上的抽象概念。經過長期的演化、融合、選擇、淘汰,系統簡便、功能全面的十進位制計數法成為人類文化中主流的計數方法,經過基礎教育的訓練,大多數的人從小就掌握了十進位制計數方法。盤中放了十個蘋果,通過數蘋果我們抽象出來“十”這一數值,它在我們的腦海中就以“10”這一十進位制編碼的形式存放和顯示,而不是其它的形式。從這一角度來說,十進位制編碼幾乎就是數值本身。 十進位制的基數為10,數碼由0-9組成,計數規律逢十進一。 --選自百度百科
二進位制的由來
二進位制是計算技術中廣泛採用的一種數制。
二進位制資料是用0和1兩個數碼來表示的數。它的基數為2,進位規則是“逢二進一”,借位規則是“借一當二”,由18世紀德國數理哲學大師萊布尼茲發現。
當前的計算機系統使用的基本上是二進位制系統,資料在計算機中主要是以補碼的形式儲存的。計算機中的二進位制則是一個非常微小的開關,用“開”來表示1,“關”來表示0。
不同進製表現同一個資料的形式特點為:進位制越大,表現形式越短
目前我們常見的進位制有:二進位制、八進位制、十進位制、十六進位制
,這些進位制的由來,我們都能在網上了解到,就不在這裡廢話了,我們直接步入正題吧.
進位制在java中的表達
二進位制的表達形式:以0b/0B開頭,其餘是有0、1組成;
八進位制的表達形式:以0開頭,其餘是有0-7組成;
十六進位制的表達形式:以0x/0X開頭,其餘是有0-9、a、b、c、d、e、f(字母大小寫都可以)組成;
進位制之間的普通轉換
A. 任意進位制轉換十進位制 a、首先了解一十進位制之間的轉換 給定一個十進位制的數字:12345 12345 = 1*10000+2*1000+3*100+4*10+5*1 = 1 * 10 ^ 4 + 2 * 10 ^ 3 + 3 * 10 ^ 2 + 4 * 10 ^ 1 + 5 * 10 ^0 從這裡我們可以得到一個規律: 1.係數:每一位的資料; 2.基數:X(x進位制,那麼基數就是x) 3.權:從0開始編號(從左到右) 4.其結果就是係數乘基數的權次冪,然後相加即可 B. 十進位制轉換為任意進位制 轉換原理:除積倒取餘 ![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181031150211221.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NqXzc2NDEyMjYxMQ==,size_16,color_FFFFFF,t_70)
快速進位制轉換
A、8421碼及其特點
什麼是8421碼?
8421碼是中國大陸的叫法,8421碼是BCD程式碼中最常用的一種。
在這種編碼方式中每一位二值程式碼的1都是代表一個固定數值,把每一位的1代表的十進位制數加起來,得到的結果就是它所代表的十進位制數碼。
由於程式碼中從左到右每一位的0分別表示8,4,2,1,所以把這種程式碼叫做8421程式碼。每一位的1代表的十進位制數稱為這一位的權。
8421碼中的每一位的權是固定不變的。
B、二進位制轉換為十進位制:一位一組;
二進位制轉換為八進位制:三位一組;
二進位制轉換為十六進位制:四位一組;
C、最後將每一組進行累計加即可。
詳細請看圖解析:
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20181031145122176.png)