O GoConqr está de visual novo! Conte para nós o que você achou.

Mapa mental

Compilador

Lailson Henrique Arquitetura de computadores T Português 5,0Avaliação média 5,0 de 5 (1 avaliação)

Mapa mental sobre compilador: pré-processador e código fonte com macros expandidas

Mapa mental: compilador

Conteúdo do mapa

Compilador

  1. Pré-processador

    • Tratamento pré-compilação: expansão de macros.
    • Código fonte (Macros expandidas)
      • Compilador
        • Cada instrução de L1 é substituída por um conjunto de instruções em L0. O programa vai ser traduzido uma unica vez e executado várias vezes.
        • Assembly (Linguagem de Montagem)
          • Montador
            • - Traducao de uma linguagem de montagem (assembly) para codigo de maquina. - Nao pode ser executado diretamente pela maquina, por conter referencias a sub-rotinas e dados. - Relacao 1:1 linguagem de montagem com linguagem de maquina - E dependente da arquitetura da maquina. Programacao dificil
            • Objeto
              • LinkEditor (Ligador)
                • - Programa que liga objetos gerados por um compilador ou montador e gera um executável. - Recebe como entrada arquivos objetos e geram como saída o programa final em linguem de máquina. - Gera um programa executável a partir de um ou mais arquivos objetos. Resolução das chamadas das funções através da unificação dos objetos num único executável.
                • Executável
                  • Empacotador (packer)
                    • - Compacta um executável e gera outro. - Packer muda a assinatura do executável. - Possibilita a criação de vírus com assinaturas diferentes. - Comprimem, cifram e ofuscam o executável. - Dificultam a identificação do compilador usado por ferramentas adequadas. - Impossibilitam a análise estática, pois o packer é quem se torna o ator principal
                  • Carregador (Loader)
                    • - Para executar um programa, um loader deve ser utilizado. O carregador é, em geral, parte do SO. - Copia o arquivo em formato binário para a memória.
                    • Binários / absolutos
                      • Programa que usa carregadores absolutos é associado com localização específica de memória, e por isso deve sempre ser carregados na mesma área de memória. (.COM)
                    • Relocáveis
                      • O programa executável relocável é semelhante ao programa executável absoluto, exceto que os endereços são todos relativos a zero (não são absolutos.) (.EXE)
                    • Memória
        • Análise
          • Divide o programa fonte nas partes contituintes e cria uma representação intermediária
          • Léxica (tokens: Tabela de simbolos)
          • Sintática (árvore sintática)
          • Semântica (incoerência semÂntica)
        • Síntese
          • Constrói o programa alvo desejado a partir da representação intermediária
          • Geração do código intermediário
          • Otimização do código
          • Geração do código

Informações

Descrição
Etapas do processo de compilacao
Visualizações
144
Avaliação
Avaliação média 5,0 de 5 (1 avaliação)

Fale Conosco

Sobre o que é sua mensagem?

O que você acha do novo visual?

Você gostou?