Essays.club - TCC, Modelos de monografias, Trabalhos de universidades, Ensaios, Bibliografias
Pesquisar

A FUNDAMENTAÇÃO PILHA

Por:   •  30/6/2018  •  810 Palavras (4 Páginas)  •  392 Visualizações

Página 1 de 4

...

Não é com frequência que acontece de um programa chamar sub-rotinas que estejam enxadas umas nas outras; isto é, uma sub-rotina, seja a sub-rotina SRA, é solicitada. Dentro da sub-rotina SRA torna-se necessário chamar a sub-rotina SRB. Antes da sub-rotina SRB ter sido completada, a sub-rotina SRC dever ser chamada, e assim por diante. Sempre que uma sub-rotina for chamada, devemos guardar oendereço da instrução a que devemos retornar depois da sub-rotina ter sido completada. Graças à sua carcterística de espera (last in-first out = LIFO), uma pilha torna um arranjo ideal para o armazenamento de endereço de retorno quando as sub-rotinas stiverem encaixadas. Como uma última operação antes de deixar o programa principal para sub-rotina SRA, colocamos na pilha o endereço de retorno ADDR(MAIN) do programa principal. Ao deixar a sub-rotina SRA para a sub-rotina SRB, colocamos na pilha o endereço de retorno ADDR(SRA) na sub-rotina SRA, e assim por diante. Daí, os endereços de retorno são colocados na pilha na ordem ADDR(MAIN), ADDR(SRA), ADDR(SRB) etc. O ultimo endereço colocado na pilha é o primeiro endereço requerido quando a ultima sub-rotina estiver concluída, e assim por diante. Portanto, o processo de retornar finalmente ao programa principal é uma questão de retirada da pilha para tornar disponíveis os endereços precisamente na ordem oposta àquela em que eles foram colocados na pilha.

Podemos igualmente achar que, quando uma sub-rotina é chamada, necessitamos poupar não somente o endereço de retorno para o programa principal, mas também os dados no acumulador, o registrador de estados e outros registradores de modo que o programa principal possa continuar depois da sub-rotina ter sido completada. A pilha também é usada eficientemente neste armazenamento temporário de dados.

...

Baixar como  txt (5.1 Kb)   pdf (42.2 Kb)   docx (11.9 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no Essays.club