一本通俗版的計算機原理

假藥郎中發表於2015-06-03

作為一名曾經的(成績平平的)計算機專業學生,至今仍清楚地記得當年是如何在渾渾噩噩中,跌跌撞撞、連滾帶爬地通過了一門門的專業課考試。雖然通過了,但不代表真的學會了。很多哪怕是專業中基礎性的知識,都學得一知半解、似懂非懂,而且考完試就忘卻了大半。這主要應歸咎於知道自己是笨鳥還不肯先飛。但另一方面,正統教材中科(佶)學(屈)嚴(聱)謹(牙)的文字表述,跟我處於平均水平上下的大腦不太相容,恐怕也是一個原因。如果那時候有本像《程式是怎樣跑起來的》這樣淺顯易懂的書作為課外讀物,一定會有很大幫助,至少能讓我把這些原本糊塗的計算機基礎原理搞清楚。當然,現在有也不晚,至少不再繼續糊塗下去。

日版書的一大優點就是細緻體貼,這本書也不例外。作者像保姆一樣在各種細節上為讀者安排妥帖,儘可能地消除理解障礙。從CPU、二進位制,到程式在作業系統中的編譯、載入和執行,甚至人工智慧,帶領讀者對程式的執行原理做了一次快速簡潔而又完整的遊歷。別認為這些概念很基礎而不屑一顧,其實不少“資深”的碼農都未必真的理解、講得清楚。(因為據我觀察,像我這樣稀裡糊塗的計算機專業學生不在少數。)

書中關於資料壓縮的那一章讓我感覺很有趣。過去對此的印象是一種敬而遠之的神祕。想到“壓縮演算法”這幾個字,就覺得一定很煩很複雜。而本書讓我只用了幾分鐘時間,就明白了資料壓縮的基本原理和演算法,不禁感嘆:“原來這麼簡單!”甚至有了嘗試寫一個壓縮軟體練練手的衝動。

現在很少有人用匯編語言程式設計了,對大多數碼農來說,編譯器將高階語言原始碼編譯成機器碼的過程,就像是巫師的黑魔法一般神祕莫測。本書用短短的幾行C語言和組合語言進行對照,就將這黑魔法的真相揭示在讀者面前,讓人恍然大悟:原來彙編也不難嘛。

全書細緻,但並不囉嗦。全部內容連文字帶圖只用了薄薄的兩百多頁就講完了,在動不動就有幾斤重的計算機書籍中,實在是少有的纖細苗條。而且紙質和印刷都屬上乘,捧讀時賞心悅目。

要說缺點,就是本書成書年代略顯久遠,書中舉例的那些軟體(LHA、Borland C++、FreeBSD等)或已成為歷史遺蹟,或在當前已逐漸邊緣化,對於年輕的讀者來說可能會感覺陌生。當然,作為一本講解基本原理的書,這點瑕疵並無大礙,技術發展很快,但基本原理是不變的。

本書作者矢澤久雄的另一本書《計算機是怎樣跑起來的》也即將上市,十分期待。希望也能同樣讓我釐清一些原本糊塗的基本概念。已經糊塗好多年,別再糊塗一輩子了。

相關文章