在當今現代化的信息時代,我們越來越依賴於使用各種電子信息設備處理和傳輸大量的信息。當我們在手機上刷小黑盒、在微信上聊天時,當我們在PC、PS、NS等設備上游玩剛買的遊戲時,你是否曾經想過,當我們在按下按鍵之時,按鍵所表達的含義是如何被轉換成機器能夠理解的語言,並顯示在設備上的?
藏在這一信息傳輸過程的奧祕,便是計算機通訊最底層的基石——二進制,也就是0和1。
1. 什麼是二進制
談及二進制我們先簡單說一下十進制,它是我們日常生活中用的最多計算方式。
十進制的歷史可以追溯到古希臘時期,當時的數學家們使用十個符號來表示數值,這些符號後來被稱爲“阿拉伯數字”,併成爲了現代數字的基礎,也就是0~9。
十進制是我們平時最常用的數制系統,也被稱爲“普通數制”或“自然數制”,同一個位上最低爲0,最高爲9,注意,最高不是10,而是由於逢十進一(當記錄的數字大於“九”,也就是”十“以上時,就要進位加一),原本是個位數的9就會進位爲兩位數的10,這個10其實是10個1的組成。
那二進制呢?二進制可能聽起來很玄乎,但實際上,它也就是一個由0和1兩個數字組成的簡單數制系統。
二進制總共有兩個符號,也就是0和1,每一位只有這兩個符號,最高爲1;它也遵循類似的逢二進一法則(當記錄的數字大於“一”,也就是“二”以上時,就要進位加一),所以原本個位數的1就要進位爲兩位數的10,而這時這個10其實就是2個1的組成。
所以,如果用二進制要表示10進制的3,4,5,6,7,8,9,就會分別爲11,100,101,110,111,1000,1001,把你在日常在十進制上的運算法則類似地挪移到二進制去看看,便會知曉其實也就這樣。
(PS:除此之外,三進制、四進制……八進制……十六進制,都是這樣的規則,自己可以找找試試看)
2. 爲什麼二進制會用來成爲現代通信最底層的數字信息?
這裏可能會有人先糾結於爲什麼0,1這種抽象的數字信息,能被實體的機器所採用並變成信息流,從而完成實際工作或學習任務的。
那再簡要說明一下我們的設備通電之後,電信號是怎麼轉變成0,1這些數字信號的。
電信號是怎麼轉變成0,1這些數字信號的?
(ps:這裏我儘量嘗試不以電子學電極管什麼的角度解釋,講得通俗易懂點)
我們知道燈泡這種東西,它只有兩個狀態,要麼亮,要麼不亮;而控制它亮不亮的其實是開關,我們把開關打開,它就通電然後亮了,關閉它就暗了。因此我們可以嘗試把開關當作一個控制的節點,用1表示它開了,用0表示它關閉。
所以,當爲1時,表示有電壓,所以燈泡亮了;爲0時,沒有電壓,那燈泡就爲暗。
那如果我面前有兩個燈泡A和B,那總共會有多少種狀態?答案是4種,即A暗B暗,A暗B亮,A亮B暗,A亮B亮,也就是對應爲00,01,10,11,也就是說兩個燈泡的四種狀態可以用這四個二進制數表示。
那三個燈泡呢,那就有8種狀態,化爲二進制表示就是000,001,010,011,100,101,110,111(自己可以對照一下),四個、五個乃至更多的燈泡也都可以用更多的二進制來表示。
如你所見,這些各種燈泡的各種狀態都可以用不同的二進制表示,其實就是更改不同燈泡的通電狀態來表示各種二進制。
更具體的說,一個電子設備的電路結構裏,可以看作會有許許多多類似於這個燈泡開關的路線,我們就可以通過控制它們各自電壓的狀態,來向外表達出不同的二進制數,這樣設備上不同的操作所轉化成的電信號就可以具體表現爲由0,1組成的數字信號了。
反過來,輸入0,1組成的特定的數字信號,也可以轉化表示具體狀態的電信號,被機器讀入從而進行操作。
例子:鍵盤敲擊字母,隨後在電腦上顯示出來
當我們一開始敲下某個按鍵,比如A時,電腦就會讀取我們敲擊的A鍵的信息。不過電腦是不知道A這個字母,但是當我們敲下這個按鍵時,計算機對應電路的通電狀態有產生變化,這個狀態變化也會對應某個二進制的值,這樣電腦就知道這個二進制值是什麼了。
根據國際ASCII編碼表(全稱"美國信息交換標準代碼",一個可以通過7位二進制記錄128個字符編碼的表),字母A在其中對應二進制爲1000001。
電腦知道二進制值爲1000001後,根據這個表上的映射,就會顯示爲A。這樣,我們鍵盤敲擊了A,電腦屏幕上也就會顯出A這個字母。
中文漢字也有對應的編碼表,比如常用的UTF-8。舉個例子,”漢“這一字在該表中對應的二進制值就是1110011010100101,對應十進制的數字就爲59045,十六進制就爲E6A5。
是不是位數太多了?沒辦法,漢字太多了,位數越多越能表現的狀態就越多。而英文只有26個字母,只需要很少位數的二進制值就能表示。
所以,換另外一個角度講,爲什麼7nm精度和5nm精度的芯片,後者爲什麼常常性能更好?就是因爲同一個面積大小的兩塊芯片,裏面電路構造精度爲5nm的芯片往往擁有更多的電路開關,可以表達更多的二進制,即顯示出更多的通電狀態,所以它的計算能力就更好,性能更強。
爲什麼這些機器都用二進制來表示信息呢?不用其他進制比如我們常用的十進制?
答案其實在上面的例子也給出來了。計算機中最基本構造其實挺簡單的:電子元件只有開和關兩種狀態,直接1和0就能表示;每一條電路也可以看作只有兩種狀態,有電或無電,也能表示1和0;每一個電壓的大小可以表示爲高電壓和低電壓,令高電壓爲1,低電壓爲0......
在二進制中,每一位只有0和1兩種狀態,這意味着計算機在進行運算時只需要判斷兩個數字的對應位是0還是1,從而大大減少了計算的複雜度。
這些電路結構各處的狀態組合在一起,就可以表示多個不同的總的狀態,就可以使一個計算機表達出不同的狀態了。所以通過二進制,機器就可以簡單方便地表示多種信息。
從計算機的內部架構到互聯網的數據傳輸,二進制都扮演着至關重要的角色,因爲它是計算機和數字電子設備中使用的基本編碼系統。所有的數字數據都可以使用二進制表示,我們日常所知的各種資料,包括文本、圖像、音頻和視頻等,計算機中的所有操作,如計算、存儲、傳輸和處理數據,都是通過二進制來實現的。
因此,二進制0和1,成爲了現在計算機時代的信息基石。
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com