日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CPU工作原理概述

發布時間:2024/1/18 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CPU工作原理概述 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為了了解CPU的完整工作過程,我們需要知道兩件事,第一,CPU是如何獲取到指令的;第二,CPU是如何執行指令的。


目錄

一、CPU和內存的交互方式

1、地址空間的概念

2、CPU的取值過程

二、CPU內部的執行過程

1、CPU的基本組成

2、CPU的指令執行過程


一、CPU和內存的交互方式

這里我們要從整體的角度了解CPU是如何從內存中獲取到指令或者數據的。

1、地址空間的概念

一個處理器能夠訪問(讀寫)的存儲空間是有限的,我們稱這個空間為地址空間(尋址空間),地址空間的大小跟地址總線的數目有關。

假設有一個8G的內存,地址總線為32,那么CPU可以訪問到的大小也只是 2^32 ≈ 4G。

2、CPU的取值過程

為了簡化過程,假設地址總線只有2根(2 bit)。CPU要從內存中獲取數據,是通過地址獲取的,即通過地址總線把地址發送給內存,內存再通過數據總線將數據傳遞給CPU。

假設CPU要獲取 0x04地址對應的數據,那么CPU就會通過地址總線發送 11,內存就會通過數據總線返回 0x04對應的數據。但是介于地址總線的數目是2,CPU可以訪問的地址只能是00 ~ 11,即0x00~0x04,這也就是為什么處理器可以訪問的存儲空間是有限的。

二、CPU內部的執行過程

這里我們將進入CPU內部了解CPU獲取到指令以后,是如何執行指令的。

1、CPU的基本組成

CPU主要由兩部分組成:控制器運算器

控制器:CPU的指揮中心,控制著整個CPU執行程序的邏輯過程。比如CPU從內存獲取哪條指令、下一步要執行哪條指令都是由控制器決定的。

運算器:負責算術運算和邏輯運算,其核心是算術邏輯單元ALU。比如CPU從內存獲取到了乘法指令,運算器拿到以后,就會運行對應的乘法單元。

2、CPU的指令執行過程

以CPU執行一條乘法運算為例,我們跳過CPU獲取乘數和被乘數的過程,下面重點來介紹CPU獲取并執行乘法指令的過程。CPU的指令執行分為三步:

  • 取指:從內存中獲取到乘法指令
  • 譯碼:識別上一步獲取到的指令,將指令解析成具體的運算。
    • 站在CPU的角度,它并不知道這是什么指令,如果不知道這是什么指令,也就無法將其送入到對應的運算單元進行運算。
  • 執行:控制器控制運算器中對應的運算單元進行運算,運算結果寫入寄存器,指令計數器中的地址會自增

(1) 取指

指令計數器PC 中每次存放著下一次執行指令的地址,CPU將地址通過地址總線發送給內存,內存通過數據總線將地址對應的內容返回給CPU,CPU將指令保存到指令寄存器IR中,這就完成了一次取指的過程。

(2) 譯碼

CPU現在已經拿到了要執行的指令,但是CPU并不知道這是什么指令,因此需要把指令送到指令譯碼器進行解析。

(3) 執行

經過指令譯碼器的解析,CPU知道這是一個乘法指令,于是就把這條乘法指令送到運算器的乘法運算單元,經過運算得到的結果會保存到寄存器中。

指令執行完畢以后,CPU會為下一次取指令做準備,指令計數器中的地址會自增。(這里先這樣理解,后面了解指令流水線后,當譯碼器在譯碼的時候,PC就已經閑下來了,這時PC就已經自增來取下一條指令了)

總結

以上是生活随笔為你收集整理的CPU工作原理概述的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。