數學不好,盡量簡潔,邏輯理解,應該有比我寫的這些更好的論文,請。
基于簡潔,同一個數的數次相乘被簡寫成在那個數的左上角放上一個小數字來代表那個數相乘的次數。
舉個例子,比如2
坐上的n代表有幾個2相乘,右下的1,2,3...n指一直數到n,數出一共有幾個2
受制于現實,傳統計算機隻能使用0或1表示數字來進行計算,但隻有0和1所能計算的數字太少了,于是為了計算更多數字,需要通過0和1去表示更多數字,通過阿拉伯數字的經驗,我們知道可以通過把數字排起來表示更多數字
n仍是數有幾個數的意思。
這樣排列我們就能制作出長度任意而不同的排列數字塊了,如果把每一堆數字塊當成一個數字,我們就能通過排列組合排列出不相同的所有數字了,好耶!
那接下來的問題就是給予排列的數字塊意思,也就是一塊特定排列的數字塊到底是什麼數,比如:
我們當然也可以随便給,比如上邊這個0010001就是8,1000101是5,101101是7等等,但這樣要記住的特定排列太多了,而我們想要盡可能方便直觀簡單快速的明白一個排列數字塊到底是什麼意思。
還是阿拉伯數字的經驗,我們知道一個數排在另一個數前面代表這個數是幾十幾而再在前面排一個是幾百幾,也就是說:
出于簡潔,就排列三個數,但規律也逐漸出現了
我們用十進制拆分了十進制!甚至還能再拆
拆的更離譜些!
更大!更好!更快!更強!
嗯...拆到這種程度應該差不多了,×1可以無限加,但也就隻有阻礙閱讀的作用了,還是撤了吧.都知道2就是1 1,3就是1 1 1,好像也沒什麼必要.但第一次拆分我們能發現100能被拆成10×10,那1000能不能被拆呢?也可以,隻要是這種往10後面排0的都能被這麼拆
而
簡寫中的2可以換成任何一個數字,10當然也可以
于是上面的規律就可以簡寫成這樣
但通過這樣寫,我們就能将極其大的數寫的很短
假如我們想寫出100000000,隻要寫成10加上右上角的短數字8就行了
并且還能寫出"無限",即是規律本身!
通過将n的數字改變,我們就能寫出任意一個由10×10組成的數字
你可能會懷疑這不過是在做符号的遊戲,而不一定能得出正确的結果.但如果你一個一個将其拆分,它們仍然還是原來的數本身,而隻是換了個寫法,仍是正确的
話 題 逐 漸 跑 偏,回到把用0和1構成更多數的目标上來,看看我們能用已經發現的規律做些什麼
既然阿拉伯數字是這個規則,那它對其他數字應該也會有一些效果?不管了,直接套就完了!
因為0乘任何數都是0,所以把它們省略掉
那麼,0010001就是11了!這樣我們就能表達很多數了!比如:
- 0101=101
- 100111=100111
- 101010=101010
- ..?
這不跟沒有一樣嗎喂,隻是把前面的0省掉,這不跟十進制一模一樣嗎,啊,好吧,就是直接套的十進制啊...
雖然我們已經能表示很多數了,但跟十進制一比還是有很多數沒能表現,為了完全實現計算的用途,還需要用0和1表現更多數才行.
該怎麼辦呢,怎麼辦呢,0和1是不能變的,目前能随便變的隻有10,既然我們想讓0和1表示所有數,那如0,1,2,3...這種最小的正整數是不能放過的,那就把10換成0試試?
額...明顯不行,這樣不管加多少1或0得出來的數隻能看最後一位,隻有0或1啊,太少了
那換成1試試?
嗯哼?好像可以!:
- 0101=2
- 100111=4
- 101010=3
- ...
這樣的确可以表示所有正整數了,但...0除了它自身完全沒用上啊,0101=2那11也=2啊,而巨大的數寫起來也太長了,會占用很多計算機資源的,有沒有什麼更好的辦法?試試2!
嗯?好像還可以?:
- 0101=5
- 100111=39
- 101010=50
- ...
是能行啊!前面的位數能夠組成所有的偶數,而最後一位的1加上前面所有的偶數組成所有的奇數,把10變成2也能組成所有數字!
這樣每一位的利用效率是高了不少,但能不能再高效些?換成3?
嗯,看起來還行,但它能不能表示小正整數?看看他能表示除了0以外最小的正整數就行,他能表示1嗎?
嗯,說了跟沒說一樣呢_(:з」∠)_,那看看2
嗯?2沒了?再往左排數字隻能讓它越來越大.看來3不行,4呢?
哇,這沒的更過分了,2沒了,3都沒了欸,這麼下去沒掉的數字隻會是越來越多吧.
權衡之下,最有效的還是把10變成2啊,既然是把十進制的十變成二,那就叫二進制吧.
雖然0和1已經能表示所有正整數了,但我想讓電腦計算兩個數的時候還是不能直接寫上233 666就行了的,因為最終電腦計算的還是0和1,我得把正整數變成0和1才行,怎麼辦呢...對了!因為二進制是由二乘出來的,我隻要知道一個正整數裡有幾個2就行了,如果這個正整數是奇數那最後一位二進制數就是1,是偶數就是0
那怎麼知道一個數裡有幾個2?把它分成兩份就行了,一直分,直到分到每一份都是2為止!從數學上來講就是除以2
嗯,6裡有3個2,就是110,再看看奇數
呃...等等,我可沒想過小數啊...但我們有規定過每一份都一定是2,那就把這7裡的2給取出來先?然後還剩下個1
嗯,隻要把1取出來不就好了嗎,7就是111啦
再看看這方法對大數字有沒有效
呃...56是由28個2組成的不錯,但28個2...到底是2的幾倍呢,要是硬算也不是算不出來,但如果56這個數再大了,恐怕就根本算不出來了,或者得拿着對照表一個個對,而更大的,許多許多位的則是根本沒法算了,為了保證什麼正整數都能計算,得再想個辦法...再用2拆一次?到時候還原成十進制的時候再乘就好,也是基于2的,不違規.
嗯...這方法的确可行,但這并沒有讓事情變得簡單,反而更加麻煩了,7的二進制111乘2并算不出二進制,甚至算十進制都很費勁,難道就沒有什麼更好的方法了嗎.....?
啊,是啊,還能這麼做,如果我把每一份都繼續拆分,再還原
還原,還原,還原,還原
然後再代入、還原
通過對還原過程的觀察我們發現,最終的1将會被還原成2的最大倍數,而在其次的1将會被還原成下一位2的倍數,最後一位為1,這對所有數都成立嗎?
所有數被2乘,最終隻會有兩種結果
而這兩種都能被拆分成唯一的結果
于是這對所有數都成立,而最終的1将是2的最大倍數,而向前的依次減一個2的倍數,從而隻需要從後往前數餘數,沒有餘數則為0,即可将十進制轉位二進制。
感謝觀看,起來走兩步休息休息。
知識來源(真不是廣告嗷誰會給沒粉絲的人廣告,我的知識除了符号以外基本上全是這本書給的,如果你能讀懂我寫的這攤,那你讀懂這本書(我看完的部分,大概一半)是沒問題的(我這篇的文風也是學這本書的)):
燒掉數學書[美]傑森·威爾克斯
數學頻道推薦:@3Blue1Brown
并沒有再檢查,如果有問題可以提出但我可能看不懂或者不一定改。
又增加了好資訊被掩蓋的可能,我很抱歉。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!