Stack pointer
Lo stack pointer (ESP) è, nelle architetture x86 un registro dedicato della CPU che contiene l'indirizzo della locazione di memoria occupata dal top dello stack per permetterne le operazioni di push, che lo incrementerà, e di pop, che farà l'inverso, per permettere le operazioni che implicano l'uso dello stack che seguono la logica LIFO.
Lo stack viene allocazione e deallocato continuamente quindi può esser facile perder traccia della sua "testa".
Per ovviare a questo inconveniente esiste il registro dedicato EBP chiamato anche frame pointer o base pointer che punta, per tutta la durata della procedura, alla prima locazione di memoria del record di attivazione in modo che si possa far riferimento al top dello stack in maniera relativa ad essa.