stackpointer

1433 palavras 6 páginas
stack pointer, Ponteiro da Pilha:

Um registrador que contém o endereço atual do elemento superior da pilha. Na ciência da computação, uma Stack Pointer (ou Ponteiro da Pilha, Pilha de Execução) é uma pilha que armazena informações sobre as sub-rotinas ativas num programa de computador. Seu principal uso é registrar o ponto em que cada sub-rotina ativa deve retornar o controle de execução quando termina de executar.
Por exemplo, se uma sub-rotina DesenhaQuadrado chama (invoca) a sub-rotina DesenhaLinha em quatro pontos diferentes, o código de DesenhaLinha deve saber como retornar a DesenhaQuadrado. Isso geralmente é feito adicionando o endereço de retorno na Stack Pointer após a chamada da sub-rotina. Sendo organizada como uma pilha, quem invoca a sub-rotina empilha o endereço de retorno. Quando termina sua execução, a sub-rotina invocada desempilha o endereço de retorno, desviando a execução para aquele endereço. Se durante sua execução a sub-rotina invocada também invocar outra sub-rotina, o endereço de retorno também será empilhado, e assim por diante. Quando esse processo de empilhamento consome todo o espaço alocado para a Stack Pointer, ocorre um erro chamado estouro de pilha. Existe um Stack Pointer para cada thread sendo executada, ainda que mais pilhas possam ser criadas para o tratamento de sinais ou para multitarefa cooperativa. Em linguagens de alto nível, detalhes da Stack Pointer são geralmente escondidos do programador. Eles têm acesso somente a lista de sub-rotinas empilhadas, e não à memória da Stack Pointer em si. Por outro lado, a maioria das linguagens de montagem requerem que programador manipule a Stack Pointer.
Atribuições

Uma das principais atribuições duma Stack Pointer é armazenar o endereço de retorno. Quando uma sub-rotina é chamada, a localização da instrução a ser retornada deve ser salva. Usar uma pilha para salvar o endereço de retorno possui importantes vantagens. Uma delas é que cada tarefa possui sua própria pilha, o que

Relacionados

  • Trabalho De Arquitetura E Organiza O De Computadores 2 6
    1462 palavras | 6 páginas
  • Questões de so - tecnologia em redes de computadores 3 semestre
    1531 palavras | 7 páginas
  • Artigo pilha
    2610 palavras | 11 páginas
  • Sistemas Operacioaniais
    3395 palavras | 14 páginas
  • Microcontrolador
    4907 palavras | 20 páginas
  • analista
    10207 palavras | 41 páginas
  • Linguagem assembly
    26432 palavras | 106 páginas
  • Assembly básico
    27928 palavras | 112 páginas
  • Tecnologia da informaçao
    27928 palavras | 112 páginas
  • Assembly
    27928 palavras | 112 páginas