程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 寄存器 cpu-關於寄存器(匯編、操作系統)

寄存器 cpu-關於寄存器(匯編、操作系統)

編輯:編程解疑
關於寄存器(匯編、操作系統)

CPU八種通用寄存器在一台計算機中大概各有多少個?多個程序一起運行,需要那麼多寄存器夠麼?還是說速度特別快?程序計數器和代碼寄存器有什麼聯系?任何程序在運行過程是否八種通用寄存器都用到?

最佳回答:


多個程序沒法同時運行,它們在宏觀上同時運行,微觀上是交替運行的。操作系統在任務切換的時候,會把前一個程序中斷時候的寄存器上下文保存到內存,並且恢復下一個要執行的程序的寄存器上下文,再執行。
http://blog.csdn.net/maimang1001/article/details/9206167
另外對於現代x86處理器來說,寄存器其實有100多個,只是在軟件的層面上看,它仿佛只有那麼幾個,這個機制叫做“寄存器重命名”
http://blog.csdn.net/edonlii/article/details/8771023
最後,現代處理器往往具有多個內核,這種情況下,每個內核有一套獨立的。
拋開性能不談,你完全可以寫出一個程序,實現任意功能,但是偏偏只使用7個寄存器。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved