CPU的獨白

 

嗨,大家好!我叫CPU,是中央處理器(Central Processing Unit)的簡稱,是電子計算機的主要設備之一,其功能主要是解釋計算機指令以及處理計算機軟件中的數據,所謂的計算機的可編程性主要是指對CPU的編程。

在我看來,外部一切都是地址。我只負責從地址上取數據,然後計算數據,計算完畢向地址上存數據。我的工作主要是圍繞着存數據、取數據和計算數據在進行。由於外界的地址只有內存和外設兩種,CPU引腳M/ 高電平意味着與內存通信,低電平意味着與外設端口通信。地址以一個字節(8位二進制數)爲單位進行編排,微機中內存地址和外設端口地址是單獨進行編排的,當我看到MOV指令就知道是與內存通信,看到IN和OUT指令就知道是與外設端口通信。

在我的眼裏,地址上(內存和外設端口)的數據都是一堆二進制數,沒有類型,也沒有任何含義。只有當我開始運行機器語言代碼時,這些數據才變得有意義。我是一個優秀且卓越的執行者,完全按照機器語言代碼功能進行執行。

人們通過布爾邏輯、數字電路技術把沙粒(二氧化硅)變成了我,我的世界只有100多個或幾百多個機器指令,這些機器指令早已由intel等芯片廠商設計好。設計完成後,機器指令是固定的,不能再修改。因爲我是硬件,不同於軟件,設計生產完成後,要麼是成功的芯片,要麼是失敗的芯片,沒有第三條道路可走。

在我的身體裏,利用寄存器暫存數據,利用運算器完成數據運算,利用控制器控制數據與內存或外設的傳輸。由於我工作的關係,我深刻理解什麼叫作分層,什麼叫作抽象,什麼叫作協議,什麼叫作分工,什麼叫作轉換,什麼叫作約定,什麼叫作專業,什麼叫透明,什麼叫作物理,什麼叫作邏輯等等。其實計算機技術實現是哲學思想的體現,計算機技術較好的利用分層、抽象、模塊化等思想使複雜的問題簡單化。

人們常說“謝謝你的存在,世界因你而精彩”。然而我的世界是枯燥的,就是不斷的正確執行這一百多個機器指令。也許專業就是簡單的事情重複的做,我太過專業,人們賦予我計算專家頭銜。

複雜的事情模塊化,模塊的事情簡單化,簡單的事情流程化,流程的事情自動化。計算機完成的功能的確非常複雜,要做好這項工作必須懂得分工和協作,每個人只做自己擅長的事情。所以我和我的夥伴們有明確的分工,由於責任明確,大家都完全遵守着各種協議和約定,所以我們配合的很默契,工作得很高效。我和我的同伴們是世界上最好的學生,從來規規矩矩,完全遵守各種協議和約定。內存完成工作數據的存儲,硬盤完成長久數據的保存,鍵盤完成字符的輸入,鼠標完成圖形按鈕的控制,顯卡完成顯示數據的轉換,顯示器完成圖形顯示,聲卡完成數字聲音向模擬聲音的轉換,音箱完成聲音的播放。我和我的夥伴們總是呆在固定的地點,各自完成自己的工作,大家“雞犬之聲相聞,老死不相往來”,大家通過總線彼此傳遞着數據。

許多人每天的工作和生活與我們聯繫在一起,人們與我們電腦從陌生到熟悉;然而許多人覺得我們太有內涵,難以弄懂我們複雜的工作原理和工作個性,又覺得從熟悉走向陌生。其實計算機的世界是按照一系列的協議和規則在運行,就像大自然按照一系列規則在運行一樣。大自然是造物主創造的規則,而計算機則是全世界計算機專家們創造的協議與規則。瞭解計算機首先要了解各個硬件功能以及硬件之間如何分工協作,然後再要知道軟件的工作原理。軟件是建立在硬件之上,就像精神建立物質之上一樣。

許多人把我們電腦當作自我精神愉悅的朋友。許多人說想每天“聽聽你悅耳的聲音,想看看你迷人的笑容,看見你我有一種莫名的快樂。”然而我的聲音(聲音格式)有各種協議,我的笑容(圖像顯示)也有各種協議,我的聲音和笑容凝聚着全球IT工程師辛勤的汗水和智慧的結晶,能爲大家帶來快樂我也感到很快樂。我們電腦被人們製造出來後,然後我們改變了世界人們工作與生活;有時我們分不清是世界改變了我們,還是我們改變了世界,也許這是相互促進的結果。也許電腦和人腦有相通之處,人腦的思維結構是由天生註定的,人可以通過學習和思考來優化思維軟件。電腦的物理結構是硬件決定的了,而軟件則是由IT工程師編寫出來,軟件通過硬件來實現電腦價值的提升。

由於我CPU是一板一眼,只認識數字世界,人們覺得我CPU很難溝通。大家覺得我CPU是冰冷的芯下面藏着熱情的火焰,在IT發展初期,只有能編寫計算機機器指令的人才才能點燃CPU芯中的火焰。由於機器指令晦澀難懂,這不適應電腦的發展與普及,於是編譯器產生了,編譯器是我CPU與計算機語言之間的翻譯官。計算機語言是面向人類思維的語言,而我CPU只認識機器指令,所以編譯器架起了我們溝通的橋樑。人們許多工作都是圍繞效率、成本、功用三者的平衡,編譯器讓人們編寫的軟件更加高效、成本更低、功能更強,編譯器推動了軟件業的繁榮。不管人們用多少種軟件語言,編寫軟件複雜程度有多高,但最終都要翻譯成我能理解爲數不多的上百個或幾百個機器指令。我用這數量極少的指令展現了色彩繽紛的世界,千變萬化的聲音。這一切的結果是基於一定的規則和協議,科學就是認識萬事萬物的規則和規律,世界上只有規則和規律的事情纔有意義,美妙的聲音是有規律的,而噪音是無規律的。我深深懂得規則和規律的重要,我的一切工作都是按照預定的規則和規律進行的。只有符合規則、約定、協議的數據我和我的同伴們才能相互理解,理解需要建立在協議、約定和規則的基礎上。

在電腦世界裏,標準的力量常常是無窮的,計算機業標準比任何其他行業都使用得廣泛,順標準則昌,逆標準則亡。由於全世界電腦各種協議需要統一的標準,才能更好把世界軟硬件廠商聯繫起來推動IT產業的進步,所以全世界許多IT公司都在認識標準、利用標準、制定標準、優化標準中博弈,如高清DVD標準之爭。

計算機的世界,是數字(數據)的世界。計算機軟硬件所做的一切只不過是爲了數據的加工、轉換、表現(顯示、聲音)、傳輸和存儲。圍繞數據在計算機中的處理產生了許多計算機學科,如數據結構是對數據的算法處理,數據庫是對數據的關係處理,計算機網絡是對數據的傳輸處理,而計算機存儲是對數據的存儲處理,計算機圖形學是對數據的轉換和顯示處理。數據的加工、轉換、表現、傳輸和存儲都需要遵照一定的協議和規範。

 

      摘錄自《深入淺出Linux工具與編程》

發佈了47 篇原創文章 · 獲贊 61 · 訪問量 44萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章