計算機科學與計算機編程
09-17
計算機科學與計算機編程
電子計算機使用電能作為能源,使用電(後來也有光)進行邏輯判斷。但是早期電子計算機的體積也很巨大,因為必須使用大量電子管構造複雜的邏輯。世界第一台電腦重30餘噸,佔地約170平方米,肚子里裝有18000隻電子管(引用百度百科)。當然,隨著時代發展,人們已經掌握了在矽片上蝕刻電路的技術,所以計算機的體積已經可以縮小到U盤那麼小。 關於具體如何利用電來進行邏輯判斷,人們有了很多構想(聽說蘇聯人搞過三進位計算機)。其中得以發展至今的,就是馮·諾依曼體系結構。作為科普,馮·諾依曼結構我不應當講得太多,這個設計簡單來說就是:計算機硬體由運算器、控制器、存儲器、輸入設備和輸出設備五大部分組成。在這樣一個體系中,我們分別能找到個人電腦能與其對應上的零件。我們常說的中央處理器也就是CPU,是集成了運算器和控制器的這樣一個元件。CPU專註於計算(就是傳統意義上的計算),收到一些數據然後返還一些數據;內存條對應著存儲器,他的功能就是把數據存在裡面。輸入設備指的是把數據弄進存儲器的設備,比如滑鼠鍵盤,輸出設備指的是從存儲器讀取數據的設備,比如印表機和顯示器。至於硬碟又是另外一回事。硬碟跟內存相比速度慢,但是價格低廉。所以我們把一些數據從內存轉存到硬碟中,用到的時候再調取到內存里使用。從這個角度看,硬碟既是輸入設備也是輸出設備。 還有一個關鍵就是馮·諾依曼結構的計算機使用二進位計算。我們可以先忽略這個點,在後面的章節仔細討論。 有了這樣一台計算器,我們都能怎麼利用?在內存中搞兩個數1和2,然後送進處理器讓他們相加,處理器返還一個3,把這個3從屏幕輸出出來。這就是原始的計算機用法。再比如在內存中搞一個數1.8,再搞一個數32。讓用戶從鍵盤輸入一個數字a,然後送到處理器讓他們做各種運算(1.8a+32)。把結果在屏幕中打出來,我們就得到了一個攝氏度和華氏度的轉換器。寫一些指令讓內存和處理器聽話,這個過程就叫做編程。
來自專欄冷老師的信奧筆記4 人贊了文章
這是專欄的第一篇文章,也是第一個章節[預備知識]的第一篇文章。本篇文章主要介紹計算機科學的背景,讓大家有一個基本的了解。下篇文章介紹編程語言類型和C++的背景。
---------------------
人們運用『編程』手段幫助解決問題自古就有。
這裡我們提到的編程,是指廣義的編程。其中最典型的例子就是機械錶:機械編程也是一種編程嘛!上弦器輸出了恆定的力,通過嚴密咬合的齒輪,保證秒針的軸每轉動360°,分針的軸就會轉動6°,這就是一種編程。中國古代的地動儀也是一種編程:使用機械機構代替人類判斷波動傳來的方向,還使用了美觀的裝飾使得它對用戶更友好。那編程又有什麼好處呢?編程可以實現簡單的邏輯,把人從重複的勞動中解放出來。
我在這裡順便提一個人類浪漫的幻想:機械朋克。那時候計算機科學還沒生出萌芽,人們又急需釋放這樣一種強大的生產力,便把希望寄託於當時的黑科技——蒸汽機上。蒸汽機能代替人力,使用燃料提供能源,再輔以機械構造的邏輯判斷裝置,就能實現所有人類想實現的願望。哈爾的移動城堡中飛翔在天空中巨大的蒸汽飛船,就是這種幻想的產物。但是這樣一種編程器也有它明顯的壞處,首先是提供能量的方式太落後了,通過機械能驅動設備,硬體會有明顯的損耗;其次是複雜邏輯會導致它有一個極其龐大的身軀,所以這個幻想一直沒能成真,漸漸淪為陀飛輪手錶這種炫技的收藏品。直到後來人類科技有了新的突破,電子計算機應運而生。
推薦閱讀:
※第一章:面向能源系統的數據科學(技術)
※幾個明星同時出軌能把微博的伺服器搞垮?
※4500元i5-6500/GTX960遊戲電腦配置推薦
※演算法中的工具抽取和演算法重構
※圖處理系統綜述