程式計數器和指令指標暫存器

2021-07-10 02:20:35 字數 525 閱讀 1293

cs和ip是8086cpu中兩個最關鍵的暫存器,它們指示了cpu當前要讀取指令的位址。cs為**段暫存器,ip為指令指標暫存器,從名稱上我們可以看出它們和指令的關係。

在8086pc機中,任意時刻,設cs中的內容為m,ip中的內容為n,8086cpu將從記憶體m 16+n單元開始,讀取一條指令並執行。

也可以這樣表述:8086機中,任意時刻,cpu將cs:ip指向的內容當作指令執行。

x86 系統中自增的是 ip,用 cs:ip 組合表示正在執行的指令位址,此時 pc 只是乙個概念上的說法。在 arm 體系中 r15 就是 pc,當然 arm 和 ia-32、x64 都支援高階記憶體管理,所以「pc」的內容未必是當前指令在記憶體中的絕對位置。

當計算機系統上電開機或者按了機箱上的復位按鈕時,cpu會自動把**段暫存器cs設定為0xf000,其段基位址則被設定為

0xffff 0000,段長度設定為64k。而ip則設定為0xfff0,因此此時cpu**指標指向0xffff fff0處,即4g空間的最後乙個64k的最後16位元組處

程式計數器和指令暫存器

暫存器是 處理器內的組成部分。暫存器是有限存貯容量的高速存貯部件,它們可用來暫存指令 資料和位址。在 處理器的控制部件中,包含的暫存器有指令暫存器 ir 和程式計數器 pc 指令暫存器 instruction register 儲存現在正在被執行的指令。執行一條指令時,首先需要根據pc中存放的指令位...

程式計數器

馮 諾伊曼計算機體系結構的主要內容之一就是 程式預儲存,計算機自動執行 處理器要執行的程式 指令序列 都是以二進位制 序列方式預儲存在計算機的儲存器中,處理器將這些 逐條地取到處理器中再解碼 執行,以完成整個程式的執行。為了保證程式能夠連續地執行下去,cpu必須具有某些手段來確定下一條取指指令的位址...

程式計數器

程式計數器是用於存放下一條指令所在單元的位址的地方。微控制器及組合語言中常稱作pc program counter 為了保證程式 在作業系統中理解為程序 能夠連續地執行下去,cpu必須具有某些手段來確定下一條指令的位址。而程式計數器正是起到這種作用,所以通常又稱為指令計數器。在程式開始執行前,必須將...