小校報

「0」與「1」,電腦講緊乜?

精選系列: 齊來做溝通達人 作者: 兔爾斯 最後更新: 08/07/2021

1001000  1001001

你知道我在說甚麼嗎?不是鍵盤壞了,這可是鼎鼎大名、電腦使用的「二進制語言」!

 

電腦的基本文字:「0」與「1」

電腦不會說話,可是它有自己的語言。它使用的最原始基本語言,只有兩個字:就是數字「0」和「1」。這兩個數字配合「二進制」,構成神奇的密碼、解碼方式,能讓電腦儲存和表達世上所有的語言、文字、聲音、影像資料,並與人類溝通!

 

甚麼是二進制?讓我們先從大家熟悉的「十進制」說起吧!我們運算時最常用的「十進制」,逢「十」進位。以「1111」為例,從最右邊開始,往左邊數:

第一個「1」代表「1」;
第二個「1」代表「10」;
第三個「1」代表「10的2次方」,即「100」;
第四個「1」代表「10的3次方」,即「1000」。
……
如此類推。

換言之,在十進制中,「1111」代表「1 + 10 + 100 + 1000」。

「二進制」,則是逢「二」進位的記數和運算方式。以「111」為例,從最右邊開始,往左邊數:

第一個「1」代表「1」;
第二個「1」代表「2」;
第三個「1」代表「2的2次方」,即「4」;
第四個「1」代表「2的3次方」,即「8」。
……
如此類推。

 

換言之,在二進制中,「1111」代表「1 + 2 + 4 + 8」,即十進制中的「15」!

人類要向電腦表達十進制中的「15」,就得先把它拆解並轉換成二進制中的「1111」;電腦也要將二進制中的「15」解碼,變成十進制中的「15」,人類才容易明白。

人們後來發展了不同的「字符編碼」系統,為每個字元(如中文字、英文字母、符號等)編排一個代表數字。這樣,不同的電腦都可以依循同一個解碼方式進行溝通,表達數字以外的意思了!


「ASCII編碼系統」曾是全球最廣泛使用的電腦編碼系統,每個字元對應一個獨特的數字,例如「A」以數字「65」代表。

 

電腦的語言邏輯:序列、分支/選擇、循環

來總結一下這個解碼過程:

  1. 將二進制數字轉換為十進制數字
  2. 按照編碼系統,將十進制數字轉換為字元
  3. 將字元組合成人類明白的語言和其他資料

(快來試試看,利用「ASCII編碼」,將「1001000」和「1001001」兩組二進制數字解密!答案在文末。)

可以想像,我們每天使用電腦、智能裝置時,這個解碼過程要進行多少次嗎?我們不用每次自行解碼,是因為有另一些電腦使用的語言,指示電腦在背後替我們處理這個極花時間的運算、轉換過程。這種比較高階的語言,叫做「程式語言」,或是「編程語言」。

程式,就是指示電腦進行每一步動作的指令。電腦不會像人一樣思考、只會運算,因此我們要把指令表達得清晰而準確,電腦才懂得執行。使用程式語言,就能把這些指令清晰表達給電腦知道,讓它跟隨命令行動。

 

指令要清晰,首要是把整件工作細分為不同步驟,並以正確的次序排列出來,這個合乎邏輯的順序叫做「序列」。電腦懂得重複執行指令,不需要人手介入,這個運作過程就算「自動化」了。以自動門為例,它的運作步驟序列是這樣的:

  1. 自動門關閉
  2. 如果有人來到門前,就打開門
  3. 如果在10秒內,再沒有人來到門前,門就會關上
  4. 如果在10秒內,再有人來到門前,門就會保持打開,並重新計時10秒

為何自動門懂得何時打開、何時關上呢?就是因為指令中的「如果」,描述了不同的條件(3.和4.),指示自動門根據不同的分支條件(有人/沒有人),選擇作出相應的行動(打開/關上)。

當10秒過後,再沒有人來到門前,自動門關上了,回到1.的狀態,直至再有人來到門前,才會再打開(2.),然後重複根據3.和4.進行條件選擇,整個過程形成一個循環

 

序列、分支/選擇,循環,就是電腦的基本語言邏輯!不同的程式語言,基本上都遵循這種結構,以協助我們完成不同的工作。現今程式語言有超過1千種,有的常用於編寫作業系統,有的常用於編寫網頁,有的適合文字處理,可說是各有長處。程式設計師會根據不同情況和目標,選用不同的程式語言編寫程式。

人的腦袋勝在靈活,電腦則勝在運算速度極快,兩者配合,就可以處理、解決更複雜的問題或工序,電腦也慢慢變得更「聰明」,使我們的生活更便捷。

AI時代:電腦溝通能力大進化!

你有試過使用搜尋引擎(如Google)找資料時,輸入關鍵字詞卻不小心輸入了錯字嗎?聰明的搜尋引擎,會反問你:「你是否要搜尋以下結果?」然後顯示正確的搜尋結果。

更多時候,我們還未完成輸入關鍵字,搜尋引擎就會提出建議,詢問你是否要搜尋某個詞語,簡直就像是會讀心術一樣!

 

你有試過在「小校園」跟兔爾斯聊天嗎?只要向兔爾斯問問題,它就會給你一個回答,或是因應你的要求,向你介紹有趣的遊戲和知識。兔爾斯,其實就是一個懂得與你溝通交流的聊天機械人!

 

電腦變得越來越「聰明」、溝通能力越見進步,甚至擁有神奇的「預測」能力,原因之一在於人工智能(Artificial Intelligence,AI)的發展一日千里,加上現今系統可大量收集數據並加以分析,從而獲得有用的資訊。

假設有100萬人曾以「小校園」為關鍵詞進行搜尋,當有一個用戶錯誤輸入「小校圓」時,搜尋引擎會從過往搜尋數據得悉,用戶搜尋「小校園」的可能比「小校圓」大得多,因此向用戶顯示「小校園」的建議搜尋結果。

電腦的溝通能力還會如何進步呢?實在令人拭目以待!

 

答案:

二進制數字「1001000」等如十進制的「72」,在「ASCII編碼系統」中的對應字元是「H」。
二進制數字「1001001」等如十進制的「73」,在「ASCII編碼系統」中的對應字元是「I」。
「1001000」和「1001001」,組合起來是「HI」!兔爾斯在跟你打招呼呢!

作者簡介
兔爾斯
兔爾斯

來自2046的機械兔,懂得穿越時空。精通運算與科技,記憶力超強。當兔耳仔高速轉動時,可以像直升機般飛行。好動友善、樂於助人的性格,大家都喜歡和他一起玩。

關鍵字詞: 電腦 |系統 |二進制 |編程 |程式 |溝通 |語言 |人工智能 |通訊