首先介紹計算機的硬體組成,下面是乙個intelpentium系列的結構圖:
匯流排匯流排是貫穿整個系統的乙個電子管道,用來在各個部件間傳遞資料資訊。匯流排傳送的位元組長度是固定的,稱為字。乙個字中的位元組數根據系統的不同而不同,在常見的32位機器上字長就是4個位元組,64位機器上就是8個位元組。
2. i/o裝置
i/o裝置就是系統與外界世界的聯絡通道。一般系統包括4個i/o裝置:滑鼠,鍵盤,顯示器以及磁碟裝置。我們編寫好的helloworld程式就放在磁碟上。
每個i/o裝置都有乙個控制器或者介面卡與i/o匯流排相連。他們的功能就是在i/o裝置和i/o匯流排之間傳遞資訊。
3. 主存
主存就是我們平常所說的記憶體,在處理器執行程式時,用來存放程式和程式處理的資料。從物理上來說,主存就是由一組動態隨機訪問儲存器晶元組成的。從邏輯上來說,主存就是乙個線性的位元組陣列,每個位元組都有乙個唯一的位址。
4. 處理器
處理器是計算機的核心,是解釋儲存在主存中指令的引擎。處理器的核心是乙個字長的儲存裝置,稱為程式計數器。在任何時刻,程式計數器都指向主存中的某條機器指令。
從系統通電開始,直到系統斷電,處理器一直在不斷地執行程式計數器所指向的指令,然後再更新程式計數器,再接著執行指令。處理器執行指令是圍繞著主存,暫存器檔案和算術/邏輯單元(alu)進行的。暫存器檔案是乙個小的儲存裝置,由一些1字長的暫存器組成,每個暫存器有唯一的名字,alu計算新的資料和位址值。cpu在指令的要求下可能會執行一下操作:
上面就是計算機硬體的基本組成部件,下面我們結合helloworld程式來看看程式是如何在硬體中執行的。
首先,我們執行helloworld程式,計算機就把儲存在磁碟上的helloworld檔案中的**和資料複製到主存中,檔案中的資料就包括最終要輸出的字串"hello world\n",這中間需要乙個叫做直接儲存器訪問的技術,使得資料不需要通過處理器就能從磁碟複製到主存中。
然後,當程式**和資料複製到主存中後,處理器就開始執行helloworld程式中的指令,通過這些指令把"hello world\n"字串從主存複製到暫存器中,並最終顯示到顯示器上面。
這就是整個helloworld執行的過程,在這個過程中我們可以看到系統主要的開銷都用在了轉移資料上。為了跟高效的轉移資料,我們需要對系統進行優化。根據機械原理,較大的儲存裝置要比較小的儲存裝置執行得慢,而執行快的裝置的**又比執行慢的裝置高。比如,暫存器和主存之間的執行速度差距就比較大。為了縮小這個差距,我們就想到在主存和處理器之間加入乙個更小更快的裝置,就是快取記憶體儲存器,用來儲存處理器近期可能會用到的資訊。
通過在處理器和又大又慢的裝置之間插入乙個更小更快的儲存裝置的方法,可以提高處理器訪問資料的速度。根據這個原理,現在每個計算機系統中的儲存裝置都形成的一種多層的儲存器結構,如下圖所示:
通過這種結構就能有效的提高處理器的執行效率。
這次的內容就寫到這,下次將會介紹計算機中的資訊儲存。
計算機硬體
計算機 軟體與計算機語言 python 一套完整的計算機系統 作業系統 windows linux 底層硬體 cpu 記憶體 硬碟 計算機硬體 cpu 暫存器 最快的一種儲存裝置 核心態與使用者態 核心態與使用者態之間的互換 cpu指令集中的指令可以分成兩部分 合理地cpu工作狀態應該是取指令 解碼...
計算機硬體
計算機就是可以進行數 算和邏輯運算的機器,而且具有儲存和記憶功能。歷史上第一台計算機誕生於1946年2月15日於美國賓夕法尼亞大學投入使用,並命名為 eniac 是電子數值積分計算機 the electronic numerical intergrator and computer 的簡稱。第二代電...
計算機硬體
1.磁碟儲存的原理就是通過磁頭改變磁碟上磁疇的磁化方向 在碟片上塗著薄薄的一層磁性材料,這些磁性材料像無數個小磁鐵,都有南極和北極。讓人驚奇的是,所有的資料,都是由這些 小磁鐵 來儲存。鋁合金製成的碟片在高速旋轉,每分鐘要轉幾千甚至上萬圈,磁頭懸浮在碟片上方滑來滑去,經常需要在毫秒級的時間內滑到指定...