計算機基礎方面的知識,對於一些非科班出身的同窗來說,一直是他們心中的痛,而對於科班出身的同窗,不少同窗在工做以後,也意識到自身所學知識的不足與欠缺,想回頭補補基礎知識。關於計算機基礎的課程不少,內容繁雜,但不管是相關書籍仍是大學課程,都有點脫離工做。特別地,計算機基礎知識體系龐雜,想要從零學習或者複習都耗時耗力。程序員
有鑑於此,本系列文章將帶你更快的補足編程必備基礎知識,涵蓋計算機領域三大基礎知識:計算機組成原理、操做系統、計算機網絡,這些都是大學計算機課程裏面最重要的內容。文章對這些內容作了提煉和總結,摒棄了做爲程序員不須要掌握的知識。編程
目的是:緩存
本篇是計算機組成原理之CPU的控制器和運算器網絡
歡迎關注、轉發、收藏、評論學習
控制器是CPU的組成部分,用於協調和控制計算機的運行,它的構成以下圖所示:操作系統
下面逐一簡單介紹。計算機網絡
程序計數器(Program Counter)翻譯
簡稱PC,用來存儲從內存提取的下一條指令的地址。當CPU執行一條指令時,首先須要根據PC中存放的指令地址,將指令由內存取到指令寄存器中,此過程稱爲「取指令」。與此同時,PC中的地址或自動加1或由轉移指針給出下一條指令的地址,此後通過分析指令,執行指令,完成第一條指令的執行,然後根據PC取出第二條指令的地址,如此循環,執行每一條指令,保證程序可以連續地執行下去。設計
時序發生器指針
用於發送時序脈衝,CPU依據不一樣的時序脈衝有節奏地進行工做,相似於CPU的節拍器。
指令編譯器
用於翻譯指令及控制傳輸指令包含的數據。
指令寄存器
用於緩存從內存或高速緩存裏取出的指令,CPU執行指令時,就能夠從指令寄存器中取出相關指令來進行執行。
主存地址寄存器
保存當前CPU正要訪問的內存單元的地址,經過總線跟主存通訊。
主存數據寄存器
保存當前CPU正要讀或寫的主存數據,經過總線與主存通訊。
通用寄存器
用於暫時存放或傳送數據或指令。
運算器是用來進行數據運算加工的。
數據緩衝器
分爲輸入緩衝和輸出緩衝,輸入緩衝暫時存放外設送過來的數據,輸出緩衝暫時存放送往外設的數據。
ALU
算數邏輯單元,是運算器的主要部件,能完成常見的位運算(左移、右移、與、或、非等)和算術運算(加減乘除等)。
狀態字寄存器
存放運算狀態(條件碼、進位、溢出、結果正負等)和運算控制信息。
通用寄存器
暫時存放或傳送數據或指令,保存ALU的運算中間結果。