next up previous contents
Next: Carregamento absoluto Up: Montagem e carregamento combinados Previous: Segundo passo   Sumário


Montagem e carregamento assemble and go

A forma mais elementar para executar o código de máquina gerado pelo montador é através do esquema assemble and go, no qual um único programa de sistema combina a realização das tarefas associadas a um montador e a um carregador.

O esquema assemble and go, como o nome sugere (``monta e executa''), combina as etapas de montagem e carregamento em um único programa. Neste caso, não há a criação de um arquivo com o módulo objeto. Quando o código de máquina é gerado pelo montador ele é colocado diretamente na posição de memória indicada pelo contador de localização. Assim, ao final da montagem o programa executável já está em memória e o montador simplesmente transfere o controle de execução para a primeira instrução executável do código de máquina gerado.

Nesse tipo de esquema, a rotina ASSEMBLEMACHINECODE no passo 2 do montador simplesmente copia o código gerado para a posição de memória indicado pelo contador de localização. A rotina ASSEMBLECLOSINGCODE simplesmente transfere a execução (através de uma instrução de desvio incondicional) para o início do programa montado.

A grande desvantagem do esquema assemble and go está no fato de que cada execução do programa requer uma nova montagem, mesmo que o programa não tenha sido alterado. Outra desvantagem está no fato de que dois programas devem obrigatoriamente ocupar a memória principal, o montador e o programa montado. Assim, a utilização desse esquema está restrita a sistemas muito simples, não sendo de utilidade na prática.


next up previous contents
Next: Carregamento absoluto Up: Montagem e carregamento combinados Previous: Segundo passo   Sumário
Ivan L. M. Ricarte 2003-02-14