暫存器和棧的關係

2021-09-25 18:09:48 字數 433 閱讀 1427

前言

暫存器作用——可以儲存位址或整數資料【程式計數器】, 用來記錄某些重要的程式狀態【條件碼暫存器】,其他用來儲存臨時資料,過程引數和區域性變數,以及函式的返回值

在這裡需要說明一下,這是x86-64**處理單元的一組16個儲存64位值的通用目的暫存器

8086時代,是%ax到%bp

ia32架構 擴充套件成32位 %eax到%ebp

擴充套件成x86-64後,原來的8個暫存器擴充套件成64位,標號%rax到%rbp,此外還增加8個新的暫存器

當x86-64過程所需要的儲存空間超出暫存器能夠存放的大小時,就會在棧上分配空間,這個部分稱為過程的棧幀(stack frame)

函式呼叫

暫存器 記憶體和Cache的關係

ram memory 即記憶體,是用於存放資料的單元。其作用是用於暫時存放cpu中的運算資料。register 暫存器是cpu的內部組成單元,是cpu運算時取指令和資料的地方,速度很快,暫存器可以用來暫存指令 資料和位址。在cpu中,通常有通用暫存器,如指令暫存器ir 特殊功能暫存器,如程式計數器p...

CS 暫存器 和 IP 暫存器

下面將要介紹的是一組非常非常重要的暫存器,即 cs ip cs ip 兩個暫存器指示了 cpu 當前將要讀取的指令的位址,其中cs 為 段暫存器,而ip 為指令指標暫存器。什麼叫做指示了 cpu 當前將要讀取的指令呢?在 8086 cpu 中,為什麼 cpu 會自動的執行指令呢?這些指令肯定是存放在...

除錯暫存器和測試暫存器

1 除錯暫存器 80386為除錯提供了硬體支撐。在80386晶元內有8個32位的除錯暫存器dr0 dr7,如圖2.6所示。這些暫存器可以使系統程式設計人員定義4個斷點,用它們可以規定指令執行和資料讀寫的任何組合。dr0 dr3是線性斷點位址暫存器,其中儲存著4個斷點位址。dr5 dr6是兩個備用的除...