微機組成

在高級編程語言當道的今天,一般只需要瞭解一款IDE,順便熟悉下一門語言的語法和API即可上手編程,計算機的底層和硬件變得越來越透明,越來越"冷門"。

僅僅是學習一門語言的語法,知道如何去掉用寫好的方法,知道如何去實現接口,繼承抽象類,如何去讓程序跑起來,看似這些已經夠用了,但是當業務變得複雜,代碼的運行效率越來越慢,這個時候如果能知道計算機的底層知識,知道程序是如何跑起來的,程序在計算機的底層是如何處理的,這些越底層的知識越能幫助我們瞭解計算機的根本,認識事物的真諦。

因此,要想成爲一名"大牛",需要掌握:計算機組成;操作系統;彙編語言;算法與數據結構;JVM(如果想要精通java,最好是學習下JVM)。

下面從最底層的計算機組成開始,一步步去推開計算機科學的大門。

計算機是由硬件和軟件構成。所謂硬件和軟件可以根據能否用觸感去得到,常見的如計算機主機,顯示器,鼠標等等這些可以摸的着的都叫做計算機的硬件部分;而軟件部分則是指編程得到的如:網站,app等,需要注意的是除了硬件外的都叫做軟件,如操作系統本質上也是軟件,是硬件系統的第一層封裝。

從硬件方面來講,計算機可以由五大部分組成:

 一:輸入單元(Input Unit)

 二:輸出單元(Output Unit)

 三:控制單元(Control Unit)

 四:運算單元(Programming Unit)

 五:存儲單元(Memory Unit)

  •  輸入單元和輸出單元就是我們常說的IO,這裏的IO指的是通過CPU與存儲單元之外的輸入與輸出,如鼠標,顯示器就是最常見的輸入和輸出。
  •  其中存儲單元指的是計算機的內存。注意的是日常的移動硬盤或U盤則不屬此列,如果非要說是存儲工作,那隻能勉強稱爲存儲外設。內存是除CPU之外最重要的結構之一,它相當於人腦的當前記憶區。與之對應的還有硬盤,或者叫磁盤,它相當於人腦的"非當前記憶區",存放的是以往發生的所有被記住的資料。
  •  控制單元和運算單元又被稱爲CPU(Control Programming Unit),也叫做計算機的大腦,在cpu中進行的是指令的執行以及數據的運算和執行。CPU是"電腦"的核心,沒有CPU的電腦就是一臺"費機",想象一下,如果一個人沒有了思考能力,那是不是意味着沒有任何的創造力?

 計算機的工作方式--計算機直接通過電信號的控制來工作,電信號在實際工作中反應的是一系列高低電平。一般認爲1是高電平,0是低電平,在計算機內部有各種各樣的IC(集成電路),IC是半導體晶體管的統稱,IC上面有許多"引腳"。這些引腳的工作日後再說。

 計算機唯一能直接識別的是機器語言,機器語言就是我們常說的二進制語言,如10101001,不能包含任何非0或非1的阿拉伯數字。計算機通過指令信號表示這段機器語言,進行加減等簡單運算,最後將得到的指令表示爲二進制語言作爲結果返回。

這裏牽涉到計算機的存儲單元:內存被劃分爲若干個存儲單元,每個存儲單元以0開頭,比如一個128字節的數據,可以用0-127的內存單元來表示。一個內存單元可以表示多大的數據呢?在計算機中最小的單位叫做:位(bit)也叫做比特。而最小的運算單位是字節(Byte)。一個字節是八位,換句話說八個比特組成一個字節,



對於一個128單元的存儲器,也就是它佔用128個字節而不是128位,因爲計算機的存儲容量是以字節爲最小單位來計算的。

我們常說的32位,64位機,這裏的32,64指的是尋址能力,地址總線(是總線的一種)是32位的微處理機一次最大尋址空間是2的32次方= 4294967296(bit)= 4(GB)左右,而64位系統的最大尋址空間的尋址空間則達到了2的64次方= 4294967296(bit)的32次方=數值大於1億GB。

 


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