O microprocessador 8051 possui uma memória de pilha de 128 bytes e um registrador de ponteiro denominado SP (Stack Pointer). O registrador SP tem 8 bits de largura e aponta para o topo atual da pilha. A pilha cresce para baixo, o que significa que o valor do ponteiro da pilha diminui à medida que os dados são colocados na pilha e aumenta de valor à medida que os dados são retirados da pilha.
A memória de pilha no microprocessador 8051 é usada para armazenar dados temporários, como parâmetros de função, variáveis locais e endereços de retorno. A pilha também é usada para tratamento de interrupções, pois o microprocessador 8051 envia automaticamente o conteúdo do contador do programa e de outros registros para a pilha quando ocorre uma interrupção.