回覆列表
  • 1 # 愛達人程式設計達人

    要回答這個問題呢,需要先說明一下CPU是什麼?CPU又稱為處理器,由運算器、控制器、暫存器、輸入裝置和輸出裝置組成,這些器件由處理資料匯流排相連。

    它們在處理器中,分工明確:

    運算器:進行資料的處理。

    暫存器:進行資料的儲存。

    控制器:控制各種器件工作。

    輸入裝置:將人們熟悉的資訊形式轉化為機器能識別的資訊形式,如鍵盤、滑鼠等。

    輸出裝置:將計算機運算的結果轉化為人們熟悉的資訊形式,如顯示器、印表機等。

    處理資料匯流排:連線各種器件,使各個器件進行資料的傳送。

    接下就簡單介紹暫存器在處理器中是怎麼工作的?

    透過圖2-2-1我們來簡單瞭解,處理器的底部和四周有大量的引腳,可以接受外界發來傳送的電訊號。每個引腳都有自己的用處。有些引腳用來將參與運算的數字輸送到處理器內部,有些引腳可以重複使用的。

    假如要進行加法運算,這些引腳將依次把加數和被加數送入處理器,處理器一旦接受訊號,將會以二進位制陣列成的電訊號反應在引腳相連的內部線路上,是一組高低電平的組合,代表著二進位制數的每一位,此時必須用暫存器(Register)(是雙向器件)的暫時儲存,之所以這樣做,是因為相同的引腳和線路馬上要輸入被加數,重複之 圖2-2-1

    前的工作,也正因為這個原因,這些內部線路稱為處理資料匯流排。它們之間透過控制器(圖中沒有畫)發出指令,控制各個器件在某個正確的時間做某個動作。

    圖2-2-1暫存器(Register A)和暫存器(Register B)將分別參與運算,假設暫存器(Register A)暫時儲存的是加數,暫存器(Register B)暫時儲存的是被加數。此時暫存器(Register A)和暫存器(Register B)都暫時儲存了資料,將不再受外部資料的影響。運算邏輯部件輸出結果,結果被輸送到暫存器(Register C),透過資料匯流排輸送到處理器外面,或再次送入到暫存器(Register A)和暫存器(Register B)參與運算。

    【處理器中有多少暫存器】

    不同的處理器,暫存器的個數、結構是不同的。【簡單介紹暫存器,詳細內容請參考Intel白皮書】

    16位處理器有14個暫存器,每個暫存器有各自的名字。

    14個暫存器:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。

    32位處理器有16個暫存器,每個暫存器有各自的名字。

    16個暫存器:EAX、EBX、ECX、EDX、ESI、EDI、ESP、EBP、ES、CS、SS、DS、FS、GS、EIP、EFLAGS。

    64位處理器有16個暫存器,每個暫存器有各自的名字。

    16個暫存器:RAX、RBX、RCX、RDX、RSI、RDI、RBP、RSP、CS、DS、ES、SS、FS、GS、RIP、RFLAGS。

    我們不對這些暫存器進行一次性的介紹,在下面的章節中,需要用到32位處理器的通用暫存器。

  • 2 # 行走的splin

    簡單來說,暫存器就是用來暫存資料的。從電子物理的角度,充放電實現資料的重新整理與儲存,掉電資料即丟失,但是計算機儲存資料器件最快的。計算機的cpu的運算器一般從暫存器中讀取資料,計算後,放到暫存器中。

  • 中秋節和大豐收的關聯?
  • 練書法時,寫著寫著感覺就不像了,是怎麼回事?