1. 程式人生 > >計算機的組成

計算機的組成

數據傳輸 復印 ima 第一個 black 機械 必須 font 算數

計算機系統總體是由硬件和軟件組成,硬件主要包三大件:運算器,存儲器,控制器,然後外加IO設備展示出一個完整的硬件系統。軟件從底層來看有操作系統,上面有應用軟件,負責各種任務,通過軟件硬件相結合為用戶解決各種問題。

具體如下導向圖:

技術分享

CPU包含運算器,控制器協調處理運算數據,運算器想要運算首先要從存儲器裏來讀取數據,主要由控制器來控制完成該操作。

運算器和存儲器之間存在很多線,統稱為總線,bus,用來控制,三大總線如下:

控制總線:用來控制從存儲器中讀取數據,或從運算器裏輸出數據

數據總線:用來做數據傳輸

地址總線:用來尋址內存空間

存儲器包括RAM,ROM等,是指具有編址功能的空間,每8位屬於一個單元,相當於一個字節,每個字節都有自己的地址,用來控制器精確的讀取到數據。

計算機計算1+1的整個過程類似:1 控制器選從存儲器中取出加數

2 控制器選從存儲器中取出被加數

3 控制器從存儲器中取出運算規則,做什麽樣的運算

4 控制器運算出結果,再從存儲器中找個沒有用到的地址空間存暫存進去(輸出)

CPU運算速度遠遠大於內存的讀取速度,內存的讀取速度也遠遠大於硬盤的讀寫速度,因此在CPU中存在著很多緩存,類似於1級緩存,2級緩存,3級緩存等(CPU購買時不能只看主頻,還要看是否有緩存),所以說電腦的最大瓶頸一般不在CPU上而是在硬盤中,因此目前固態硬盤已經在普及到了個人PC中,硬盤的讀寫是由機械裝置通過磁頭尋道讀取數據,因此很慢,和CPU的速度相比一個天一個地,因此內存也必須要比較大(如果運行比較重要的業務的時候),控制器讀取數據先從硬盤中讀取到內存空間上,再由內存傳輸到運算器中進行運算。

為什麽32位的系統最大只能用到4G的內存:

計算機只有二進制,內存的地址就是32位的二進制數,總共的變化就是有2的32次方總變化(可以存儲的單元),第一個地址為0000 0000 0000 0000 0000 0000 0000 0000轉換為16進制就是0x00000000.

那麽2^32到底是多少個? 2^32 = 4 * 1024(G) * 1024(M) * 1024(K) = 4294967296 , 就是4G 啊, 而每1個地址對應1個1個字節, 容量就是1byte, 所以2^32個地址就總共能對應應4GB 的內存容量

如果你給32位的系統配上了8GB的內存, 操作系統最多也只能給其中4GB 分配地址, 其余 4GB 是沒有地址, 因為地址不夠用, 所以32位系統最多支持4GB內存就是這樣來的

那麽64位系統呢, 對應地, 64位系統的內存地址是64位的二進制數, 0000 ...640 ~ 1111 ...641, 用十六進表示就是從Ox0000000000000000 ~ OxFFFFFFFFFFFFFFFF , 每個地址的長度比32位的長度多1倍! 64位系統總共有多少個地址:2^64 = 2^34 * 1024(G) * 1024(M) * 1024(K) 也就是 17179869184 G4G × 4G)個地址,也就是說64位系統配上64cpu理論上支持17多億GB的內存。

技術分享

IO設備只是用來對外部進行交互的設備,比如顯示器,鍵盤,鼠標,打印機,復印機等等。

計算機的組成