計算機為什麼要二進制數據?在前幾次的亂談文章中,我們提到計算機的起源算盤,以及發展過程中出現的步進計算機以及差分機這些早期的計算設備無一例外都是使用了十進制的計算方法,也就是“逢十進一”,算盤每撥動十顆珠子就要向前進一位,步進計算機的齒輪每轉動一圈(一圈是0~9十個數字)就會帶動前一個齒輪轉動一格十進制非常符合我們的計算思維,但為什麼計算機發展到後來會将進制改為難以理解的二進制呢?,今天小編就來說說關于計算機為什麼要二進制數據?下面更多詳細答案一起來看看吧!
在前幾次的亂談文章中,我們提到計算機的起源算盤,以及發展過程中出現的步進計算機以及差分機。這些早期的計算設備無一例外都是使用了十進制的計算方法,也就是“逢十進一”,算盤每撥動十顆珠子就要向前進一位,步進計算機的齒輪每轉動一圈(一圈是0~9十個數字)就會帶動前一個齒輪轉動一格。十進制非常符合我們的計算思維,但為什麼計算機發展到後來會将進制改為難以理解的二進制呢?
自古以來,我們日常中使用最多的就是十進制,其原因也十分簡單,因為我們的手指一共有十根,如果人類在演化過程中隻産生了六根手指,那可能我們現在最常用的可能就是六進制了。手指對于遠古時期的人類來說無疑是最方便實用的天然計算工具了,隻需通過簡單的“扳手指”就能快速的計算自己的收獲。随着生産力增加,十根手指無法滿足生産計數時,“進位”的思想便慢慢出現,數完十根手指之後在心裡默計一位,然後将手指歸零繼續計數,最原始的十進制便産生了。
現代計算機采用二進制,最根本的原因在于計算機的電子化。在使用齒輪的機械式計算機中,要表示十個數很簡單,隻需将齒輪分成十格,每格分别代表0~9十個數字即可非常簡單的實現十進制。随着計算機的發展,機械齒輪遠遠不能滿足運算速度的需求,于是齒輪變成了繼電器、真空管、晶體管這些電子開關。電子開關的狀态通常都隻有“開”和“關”這兩種,所以它隻能表示“0~1”兩個數。如果硬要将電子開關做成十進制,無疑會讓電路變得十分複雜,出錯的概率、維護的成本也會成倍增加。所以計算邏輯為硬件讓出了道路,計算機最終使用了二進制。好在二進制隻存在于計算機的底層計算邏輯中,我們日常生活中使用的電腦和手機幾乎不會出現二進制的身影,即使是專業的編程人員也不需要使用二進制機器語言編寫代碼。
圖片來源網絡
除了電子開關的硬性要求之外,二進制本身還是具有很多的優點的。由于隻有“0和1”兩個數,所以運算法則變得極為簡單。以乘法為例,十進制的0~9單位數乘法法則一共有55條(1*1=1,1*2=2,1*3=3等等),如果我們需要口算乘法的話通常都需要記住這55條法則,這就是我們小學時需要背誦的九九乘法表。再來看看二進制的0~1單位數乘法法則:0*0=0,0*1=0,1*1=1,可以看到乘法法則一共就3條,運算的簡易性較十進制要簡單的多,利于簡化電路結構。
二進制的另一個優點就是“0和1”從邏輯上符合“真和假”的邏輯狀态,而邏輯代數在數學上已經有了一個完整的體系。英國數學家喬治·布爾(George Boole)提出了以“真、假”邏輯為基礎的代數體系,并且解決了所有的法則和運算,這個數學體系以他的名字命名為“布爾代數”。所以二進制計算有了一個現成的數學理論基礎。
圖片來源網絡
計算機發展過程中也出現過三進制的情況,比如前蘇聯的CeTyHb三進制計算機,它使用電壓的“正、負、零”來表示三進制的三種狀态。在開發之初,它比同時代的二進制計算機要穩定和快速,但前蘇聯疏于維護,三進制也逐漸被淘汰,最終隻有二進制計算機發展至今。
圖片來源網絡
▎往期内容
[01]計算機科技亂談:從算盤到15噸重的差分機之間到底經曆了什麼?
[02]計算機科技亂談:史上第一位女程序員,她還是詩人拜倫的女兒
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!