1. 程式人生 > >技術人生故事2:我的計算機大學

技術人生故事2:我的計算機大學

我必須閱讀1957年的國外論文,否則我的畢業設計將無法完成。
我的畢業課題是“人工智慧在計算機晶片設計上的應用”,聽起來非常神祕,但是我有機會得到一個不錯的辦公室和一臺8086計算機以及一臺LK16000印表機!這對於當時的同學門來說,是非常奢侈的,雖然今天對於學生來說,計算機已經成為一種普通的工具,但那個時候,我們在四年的大學生活中,只有30個小時是用來到微機上學習的。唯一練就的本領是除錯COBOL語言的BUG,否則,我們的作業將無法完成。因為上機的時候每人靠一張MS-DOS啟動盤來編寫程式。
那時,我學習了C語言,並且將他運用的很好。最後能夠在那樣的計算機上繪製晶片圖形。可惜,速度非常慢,以至可以眼睜睜看著一行一行的線被漫漫畫到螢幕上!
迫不得已,必須研究BIOS了,乾脆使用匯編語言直接操作記憶體就是了。記得圖形BIOS地址是:B8000。現在對於很多使用WINDOWS的人來說,這是一個陌生的東西。因為WINDOWS已經徹底將和硬體最接近的所有控制和操作乾脆變成它規範的標準和虛擬的類函數了。
從此,我們的程式設計師們,再也無法知道自己怎樣控制一個電腦。也無法超越作業系統來完成自己希望的創造。所有的工作,必須依賴WINDOWS提供的API或類庫。這種做法,本身極大降低了開發難度,但我們也被象類庫一樣,被封裝到一個微軟提供的抽象世界中。
現在的很多人已經漸漸遠離這種底層的開發和對硬體的操作,甚至中文圖書很多,也不需要苦讀英文原著。但是,我的個人體會是,如果希望在IT行業進行更深發展,不可缺少的能力是:專業英語和計算機體系結構。
一般來說,等待翻譯過來的圖書,需要等一年左右,而今天飛速發展的技術,在一年左右已經變化了,當你閱讀圖書的時候,可能沒有想到那是一年以前的知識!
如何學會專業英語?辦法簡單,咬著牙,翻譯一本300頁的計算機圖書!那麼,你的英語就飛速發展了!專業英語好了,自己完全可以直接閱讀文章,沒必要等待翻譯了。另外,由於很多翻譯者往往是計算機的外行,翻譯的東西不是按照計算機行業的思維和表達方式來描述,導致詞義差別太大,誤導了讀者。這更是大麻煩!
計算機體系結構?什麼東西?說白了,就是計算機的“生理衛生”!詳細講述了計算機的構成,幾塊骨頭,多少內臟,造血機制等。知道計算機體系結構的最大好處就是把計算機看透了,也就從根本上理解了軟體、硬體以及他們的工作原理和方法,在以後的工作中,能夠善於推理地解決問題,而不是瞎猜或者非憑藉經驗不可!
在大學的時候,能夠有機會做一些專案,對未來的工作很有好處。記得當初,我的同學們為了爭取上機,都在深更半夜起來混入機房,我那時候就每天晚上從三層宿舍的窗戶爬出去,到計算機房上機,到凌晨再從窗戶怕回來。練就了翻窗戶的本事。
在今天的工作中,能夠遇到開發底層程式的機會少了,但是,我仍然建議使用VC++編寫一些底層程式,體會一下計算機的基本原理和工作方式,這是練內功的方法,雖然不是最後你要使用的武功招數。