Mecanismos de Conversões de linguagens

Description

Mind Map on Mecanismos de Conversões de linguagens, created by racascao on 19/01/2015.
racascao
Mind Map by racascao, updated more than 1 year ago
racascao
Created by racascao almost 10 years ago
35
0

Resource summary

Mecanismos de Conversões de linguagens
  1. Pré Processador
    1. Tratamento pré-compilação
      1. Expansão de macros
        1. Dificuldade
          1. Manter registro das linhas originais
            1. Gerar mensagens significantes
          2. Uso mais conhecido
            1. Linguagem C
              1. Nem toda linguagem suporta
            2. Montador
              1. Traduz linguagem de montagem para código de máquina
                1. NÃO Pode ser executado direto pela máquina
                  1. É dependente da arquitetura da máquina
                    1. Uso de comandos - Endereçamento Simbólico
                      1. Relação 1:1 com a linguagem de máquina
                      2. Compilador
                        1. Recebe entrada em alto nível
                          1. Conversão e a execução em fases distintas
                            1. Cada instrução do código fonte pode gerar várias instruções de máquina
                              1. Fases
                                1. Análise
                                  1. Divide o programa fonte nas partes constituintes e cria uma representação intermediária dos mesmos
                                    1. Léxica (Tokens)
                                      1. Sintática (Árvore Sintática)
                                        1. Semântica (incoerência semântica)
                                      2. Síntese
                                        1. Constrói o programa alvo desejado a partir da representação intermediária
                                          1. Geração de código intermediário
                                            1. Otimização do Código
                                              1. Geração do Código
                                        2. Interpretadores
                                          1. Tradução e a execução das instruções ocorrem passo a passo, a cada instrução
                                            1. Execução simultânea à leitura, logo após a análise
                                              1. Recebem
                                                1. Programas em linguagens assembly
                                                  1. Linguagens de alto nível
                                                    1. Arquivos Binários com inst. de máquina
                                                    2. Processadores são interpretadores implementados em Hardware
                                                    3. Ligador
                                                      1. Gera o executável
                                                        1. Gera um programa executável a partir de um ou mais arquivos objetos
                                                          1. Resolução das chamadas de funções através da unificação dos objetos num único executátvel
                                                          2. Empacotador
                                                            1. Compacta um executável e gera outro executável auto extraível
                                                              1. Possibilita criação de vírus com assinaturas diferentes
                                                                1. Comprimem, cifram e ofuscam o executável
                                                                  1. Dificultam a identificação do compilador usado por ferramentas adequadas
                                                                    1. Impossibilita a análise estática, pois o packer é quem se torna o ator principal
                                                                      1. Decifragem sobre demanda
                                                                      2. Carregador
                                                                        1. Em geral é parte do S.O.
                                                                          1. Copia o arquivo em formato binário para a memória
                                                                            1. Tipos
                                                                              1. Binários/Absolutos
                                                                                1. É associado com localização específica na memória
                                                                                  1. Deve ser carregado na mesma área de memória
                                                                                    1. EX.: .com
                                                                                    2. Relocáveis
                                                                                      1. Iguais aos absolutos
                                                                                        1. Exceção
                                                                                          1. Os endereços são todos relativos a zero
                                                                                          2. EX.: .exe
                                                                                      2. Implementação Híbrida
                                                                                        1. Mescla compilação com interpretação
                                                                                          1. Programas fontes são traduzidos para uma linguagem intermediária que é interpretada
                                                                                            1. Tem maior portabilidade que uma linguagem compilada
                                                                                              1. São mais rápidas que um linguagem interpretada
                                                                                                1. Bytecode JAVA
                                                                                                Show full summary Hide full summary

                                                                                                Similar

                                                                                                Modos de Endereçamento
                                                                                                Talminha
                                                                                                Arquiteturas
                                                                                                racascao
                                                                                                Revisão de AOC
                                                                                                Patrick Rudgéri
                                                                                                Memória do computador
                                                                                                Eduarda Simoes
                                                                                                Memória Secundária
                                                                                                Eduarda Simoes
                                                                                                RAIDs
                                                                                                Talminha
                                                                                                Máquina Multinível
                                                                                                racascao
                                                                                                VON NEUMANN x HAVARD
                                                                                                Talminha
                                                                                                Evolução e desempenho do computador
                                                                                                Eduarda Simoes
                                                                                                Conceitosbásicos: Bases numéricas e Sinais digitais
                                                                                                Eduarda Simoes