Questões de Concurso
Comentadas sobre compilador em arquitetura de computadores
Foram encontradas 96 questões
Dadas as afirmativas a respeito de compiladores,
I. Um compilador é classificado como just-in-time compiler quando o processo de compilação acontece apenas no momento em que o código é executado. Por essa razão, compiladores do tipo just-in-time compiler não são capazes de fazer otimizações no código final como parte do processo de compilação.
II. O código gerado por um compilador deve, necessariamente, ser semanticamente equivalente ao código fonte original.
III. O processo de compilação é composto por três passos obrigatórios: análise léxica, análise sintática e geração do código final. E, opcionalmente, podem ser executados mais dois passos: análise semântica e otimização de código.
IV. A etapa de análise léxica consiste em analisar o código fonte para produzir símbolos (tokens), que são processados em seguida na etapa de análise sintática, também conhecida como parsing.
verifica-se que estão corretas
Considere as afirmativas:
I. cria o código objeto traduzindo as instruções da linguagem de montagem (assembly) para código de máquina;
II. recebe como entrada um conjunto de arquivos objetos e bibliotecas, e produz como resultado um arquivo objeto de saída;
III. traduz um programa descrito em uma linguagem de alto nível para um programa em linguagem simbólica ou linguagem de máquina;
IV. recebe uma instrução do programa fonte, converte-a em linguagem de máquina e ordena ao computador que execute esta instrução.
Nessa ordem, os itens de I a IV referem-se a
No que se refere à compilação e interpretação de programas, julgue o próximo item.
Compilador é um utilitário responsável por executar um
programa objeto diretamente na máquina.
Considerando os conceitos de bibliotecas, julgue o item subsequente.
Na compilação de um programa que chama uma biblioteca
compartilhada, todo o código da biblioteca é copiado e
inserido dentro do binário final.
A compilação é o processo de tradução de um programa escrito em uma linguagem fonte em um programa equivalente em linguagem de máquina. Nesse processo, o programa fonte normalmente passa pelas fases:
I. Identificação de sequências de caracteres de entrada e produção de uma sequência de elementos de saída, os tokens. Nesta fase, verifica-se se cada caractere do programa fonte pertence ao alfabeto da linguagem, identificando os tokens e desprezando comentários e espaços em branco. Os tokens constituem classes de símbolos, tais como palavras reservadas, delimitadores, identificadores etc.
II. Identificação de sequências de símbolos que constituem estruturas como expressões e comandos, através de uma varredura, ou parsing, da representação interna do programa fonte, produzindo uma estrutura em árvore, chamada árvore de derivação.
III. Verificação das estruturas quanto ao sentido, ou seja, se o programa não possui erros de significado. Por exemplo, verifica se um identificador declarado como variável é utilizado como tal, se existe compatibilidade entre operandos e operadores em expressões etc.
Os itens I, II e III referem-se, correta e respectivamente, às fases
Com base na organização e arquitetura de computadores, analise as afirmativas abaixo e assinale a alternativa CORRETA.
I. O conceito de pipeline consiste em dividir a execução da instrução em várias partes, sendo cada uma delas manipulada por unidades dedicadas do hardware que trabalham em paralelo.
II. Os compiladores são programas que recebem como entrada arquivos-texto contendo módulos escritos em linguagem de alto nível e geram como saída arquivos-objeto correspondentes a cada módulo.
III. O clock é um circuito oscilador que tem a função de sincronizar e determinar a medida de velocidade de transferência de dados no computador.
Para que os programas funcionem, eles devem ser traduzidos para o código de máquina (de código fonte para código objeto) e para isso é necessário um tradutor ou um compilador. Em relação à característica de um programa compilado, analise as afirmativas a seguir:
I. O compilador ocupa a memória enquanto se executa o programa.
II. O compilador é carregado na memória apenas na compilação do programa.
III. O programa é traduzido inteiramente uma vez.
IV. O programa precisa ser traduzido cada vez que é rodado.
V. Sua execução é rápida.
VI. O programa acaba por se tornar mais lento.
Está CORRETO o que se afirma em:
Com relação aos conceitos e características de compiladores, julgue o item que se segue.
Considere a gramática string 6 string + string |string – string |0|1|2|3|4|5|6|7|8|9 e a string como um único nó não terminal, que pode ser um dígito ou uma sentença. Nessa situação, a expressão 10 – 4 + 3 possibilita criar duas árvores de derivação distintas.
O interpretador é considerado um tradutor que não gera código-objeto, mas que, diferentemente do compilador, traduz o programa linha a linha, ou seja, o programa é executado à medida que é traduzido.
Considere a gramática string → string + string → string – string |0|1|2|3|4|5|6|7|8|9 e a string como um único nó não terminal, que pode ser um dígito ou uma sentença. Nessa situação, a expressão 10 – 4 + 3 possibilita criar duas árvores de derivação distintas.
Interpretador é um tradutor de linguagem que executa o programa fonte de imediato, em vez de gerar um código objeto a ser executado após o término da tradução, enquanto o compilador recebe um programa fonte e produz programa equivalente na linguagem alvo. No caso da linguagem Java, os processadores combinam compilação e interpretação.
A compilação é o processo de análise de um programa escrito em linguagem de alto nível, denominado programa-fonte, e sua conversão em um programa equivalente, escrito em linguagem binária de máquina, denominado programa-objeto.