iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 2
0
自我挑戰組

程式追尋之路系列 第 4

#4 從無到有打造一台電腦

  • 分享至 

  • xImage
  •  

如果你還不了解電腦的原理,在此推薦一本很棒的入門書。《電腦如何思考 》[1]
他會告訴你最底層的電腦在做什麼事情,他說工程師就像現代的魔法師,他們把魔法刻在石頭上。確實,矽(Si)是構成沙子、水晶的成分,這麼說並不為過。我一直對這樣的說法深深著迷,更加深我想了解電腦的好奇心。

另外網路上有一門免費課程叫做「 From NAND to Tetris 」[2],它教你如何從邏輯閘開始,一路往上建構基本的邏輯元件、機器語言、基本的電腦、作業系統、更上層的抽象語言。學過的人可以從頭到腳完整地認識電腦的每一個層面,就像一口氣把巨無霸漢堡吃下肚的感覺,絕對讓你收穫滿滿。

我一開始入門的時候,是先從 DOS 指令、Html 語法,學習用「文字指令」去控制電腦,到後面學C語言,越學越底層,也越來越了解電腦是怎麼運作的?然後發現原本有這麼多層封裝。

電腦之所能夠運算,是因為人們透過一種方式轉換了邏輯運算,讓電腦可以「模擬」數字運算,而後透過編碼,讓文字對應到某個特殊編號。至此,電腦開始能夠算數字、寫文章。這背後要講一個技術叫做「編碼」,也可以說是「翻譯」。後面陸陸續續地,「顏色」被編碼了,「聲音」被編碼了,於是開始有了色彩和聲音。

但這些還比不上「指令編碼」,這是為什麼電腦之所以無所不能的原因。
明天,我將介紹一台萬能的電腦-圖靈機。

[1] https://www.books.com.tw/products/0010071581
[2] https://www.nand2tetris.org/ 課程大綱如下:
0. From Nand to Tetris

  1. Boolean Functions
  2. Boolean Arithmetic
  3. Memory
  4. Machine Language
  5. Computer Architecture
  6. Assembler
  7. VM I: Stack Arithmetic
  8. VM II: Program Control
  9. High-Level Language Project
  10. Compiler I: Syntax Analysis Project
  11. Compiler II: Code Generation Project
  12. Operating System

上一篇
#3 電腦之於我
下一篇
#5 通用圖靈機
系列文
程式追尋之路7
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言