進制的問題,你如果瞭解其所以然,就明白了。這裏用8進制來講解,其他進制道理一樣的。
10進制是日常生活中最常用常見的計數法,據可靠來源分析,是因爲人類有10個手指頭。
有些人說時間和月份是12進制,其實時間和月份還是10進制。只不過最大就到12而已。但如果把10,11,12這3個數,看成是全新的符號,而不是0、1、2的組合,那麼時間和月份就是13進制,也不是12進制,爲啥? 請繼續閱讀)。
在記數時,比如計算木棍的數量時,記到11的時候,手指就不夠用了,怎麼辦?(腳趾?太累了還要拖鞋)於是聰明的人類就想了一個聰明的辦法:把已經用手數好的(10根)木棍,捆在一起,作爲一個單位,再給單位起個名,如:捆,就把問題零化整,陌生化熟悉了。因爲每數到10根,就會捆起來,新形成一個新的1(捆),所以不需要10這個專門的符號,而只需要一個更大的單位就可以了。捆多了,又數不過來了,怎麼辦,人類善於總結經驗,於是便發明了一個更更大的單位:堆,每10捆一堆。堆多了,再發明垛…… 可是“根捆堆垛”不太適合描述雞鴨等其他事物,更主要的是,無法表達抽象的概念,所以就另發明了:“個十百千……”來對應“根捆堆垛……”啊~現在你已經深刻的理解10位數了(什麼?不說你也理解的很深刻?)。
如果人類只有8個手指頭,情況會怎樣?恐怕就會8根一捆了,那也就沒有必要發明 8 和 9 這兩個數字符號了。因爲第8根總是要結合前7根變成一個新的1(捆),所以8這個符號實際是用不着的,而只有“1捆”這個概念。於是,個位、十位、百位、千位,這些名詞所代表的數量,也不是再10進制裏的10,100,1000,並且根據可靠消息來源,8進制國家的人們,或許更本就不會有“個十百千……”,而是直接用“根捆堆垛……”。根、捆、堆、垛,所代表的數量便是8,64,512和4096。
那麼,10個手指的人,怎麼和8個手指的人交流呢?
爲了和10進制計數區分開,我們給8進制的人,發明一種新的數字表達方法,就是在8進制的數前加上o(歐)這個符號。
因此10根木棍,就是1捆 + 2根,用上面提到的方法,寫作:
o12根(1捆×8根 + 2根 = 8 + 2 = 10根)
o50 說明有:5捆×8根+ 0根 = 40根
o70 說明有:7捆 ×8根 = 56根。。(7× 8的1次方
可以看出,再來一捆的話,o70根就有8捆了,所以又要用更高位(堆)來表示,就是o100。
o100 1堆 = 8捆 = 64根。
o200 說明有:2堆,2堆 ×8捆×8根 = 128根。(2 × 8的2次方
o3000 有3垛:3垛 ×8堆×8捆×8根 = 1536根。(2 × 8的3次方
以此類推,不難總結出來,8進制數第n位所代表的數量,就是那一位的數量乘上8的n次方(個位是第0位),而整個8進制數的數量,又是所有這些位的數量的總和。
o3210 這個數,第0位是0,第1位是1,第2位是2…… 是10進制的多少呢?
是 3 × 8^3 + 2 ×8^2 + 1 × 8^1 + 0 × 8^0 = 1672
o4567 = 4 × 8^3 + 5 ×8^2 + 6 × 8^1 + 7 × 8^0 = 2423
這樣,你就知道8進制國家的人,如何賣東西給10進制國家的人了。那麼10進制轉8進制呢。你只須換個思維角度,計算出“根捆堆垛”分別相對應的數量就可以了。比如:
10根有1捆零2根,那就是 o_1捆_2根 -> o12
16根呢?正好2捆: o_2捆_0根 -> o20
100呢?100有12捆零4根 -> o_12捆_4根,哦!12超過8,手指不夠用了,所以還得繼續分組。
12捆 = 1堆4捆,帶入o_12捆_4根 -> o_1堆4捆_4根 -> o144。
這樣,也可以總結出來一個規律,不停的將中間超過8的數,向高位擴充,就是10進制轉8進制的方法。用數學來計算,就是不停的除8取餘就可以了,如1234根(個):
1234 / 8 = 154 餘 2 (1234根 是 154捆 餘 2根)
┌────────┘
154 / 8 = 19 餘 2 (154 捆 是 19堆 餘 2捆)
┌────────┘
19 / 8 = 2 餘 3 (19 堆 是 2垛 餘 3堆)
┌───────┘
2 / 8 = 0 餘 2 (2 垛,小於手指數,餘 2垛)
這個數就是:2垛3堆2捆2根:
1234 = o2322
恭喜,你已經統治了10進制國和8進制國的公民,實現了雙邊貿易!3邊也不遠了~哦耶。