Buscar

Exercícios compiladores

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Exercício
 avalie sua aprendizagem
Um compilador está veri�cando se uma variável foi declarada somente uma vez, se foi declarada
antes do seu primeiro uso, se foi declarada e nunca foi usada e se os tipos de dados em uma
expressão aritmética são compatíveis. Essas veri�cações são realizadas na fase de:
(FGV/2015) O processo de compilação envolve diversas etapas, como análise léxica, análise sintática, análise
semântica, otimização de código e geração do código objeto. O módulo de análise léxica de um compilador tem por
objetivo:
COMPILADORES  
KEVENY BORGES DOS SANTOS 202001410261
COMPILADORES  2023.2 (G) / EX
Prezado (a) Aluno(a),
Você fará agora seu EXERCÍCIO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O
mesmo será composto de questões de múltipla escolha.
Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se
familiarizar com este modelo de questões que será usado na sua AV e AVS.
O COMPILADOR
 
1.
análise semântica.
otimização do código
análise sintática.
análise léxica.
geração do código.
Data Resp.: 22/11/2023 20:27:12
Explicação:
A resposta correta é: análise semântica.
 
2.
construir as árvores sintáticas dos diversos comandos do programa fonte.
veri�car se o programa fonte obedece às regras da gramática da linguagem.
agrupar os caracteres do programa fonte em unidades denominadas tokens.
javascript:voltar();
javascript:voltar();
javascript:voltar();
javascript:voltar();
Considere os seguintes passos da compilação: 
I. Otimização 
II. Análise Léxica 
III. Geração de Código 
IV. Geração de Código Intermediário 
V. Análise Semântica 
VI. Análise Sintática 
A ordem correta dos passos durante a compilação é: 
(FAEPESUL/2019 - Adaptada) A arquitetura de computadores é o campo de estudo que engloba os princípios e os
componentes fundamentais dos sistemas de computadores. Por de�nição, um microprocessador, também chamado
de processador, é:
gerar o código objeto correspondente à tradução do programa fonte para alguma forma intermediária de
representação.
eliminar comandos supér�uos do programa fonte.
Data Resp.: 22/11/2023 20:27:21
Explicação:
O objetivo da análise léxica é garantir que o código fonte esteja dividido corretamente em tokens, descartando
espaços em branco e comentários, além de identi�car e classi�car corretamente os tokens de acordo com as
regras léxicas da linguagem de programação. Essa análise é importante para o processo de compilação, pois
fornece a base para as etapas subsequentes, como a análise sintática e a geração de código.
 
3.
II, V, VI, IV, I e III 
III, IV, V, VI, I e II 
III, IV, VI, V, I e II
III, V, VI, IV, I e II
II, VI, V, IV, I e III 
Data Resp.: 22/11/2023 20:27:26
Explicação:
A resposta correta é: II, VI, V, IV, I e III.
 
4.
Componente de hardware que permite um computador conectar-se na internet.
Um software responsável pelos cálculos do sistema.
Componente de hardware responsável pelo armazenamento temporário de informações para smartphones.
Um circuito integrado que realiza as funções de cálculo e tomada de decisões.
Uma peça utilizada unicamente em computadores.
Data Resp.: 22/11/2023 20:27:31
Explicação:
Um microprocessador, também conhecido como processador, é um componente de hardware fundamental em
sistemas de computadores. Ele é um circuito integrado que contém a Unidade Central de Processamento (CPU),
responsável por executar instruções e realizar operações de cálculo e lógica em um computador.
O tradutor que gera um código objeto a partir de uma linguagem de baixo nível é o :
(IF-PA/2023 - Adaptada) Na arquitetura de computadores, os registradores são circuitos digitais essenciais para o
funcionamento do processador, pois permitem o acesso rápido a dados e operações aritméticas. Podemos a�rmar
que a função do registrador é armazenar
(ITEP - RN/2018 - Adaptada) Sobre o funcionamento e as características dos compiladores e interpretadores,
assinale a alternativa correta.
 
5.
Ligador 
Montador 
Compilador 
Carregador 
Interpretador 
Data Resp.: 22/11/2023 20:27:34
Explicação:
A resposta correta é: Montador.
 
6.
dados em longo prazo para serem utilizados, posteriormente, pelo processador.
somente informações de con�guração do sistema.
todos os dados do sistema operacional no hardware.
permanentemente todas as instruções executadas no sistema operacional.
dados, temporariamente, para serem processados pelo processador.
Data Resp.: 22/11/2023 20:27:39
Explicação:
Os registradores são circuitos digitais localizados no processador e desempenham um papel fundamental no seu
funcionamento. Eles são usados para armazenar dados temporariamente enquanto o processador executa
instruções e realiza operações aritméticas.
 
7.
O interpretador converte o código todo para um código-objeto. Esse código objeto é uma tradução do código
para uma linguagem que o computador entende.
O código-objeto é a entrada para o compilador, o qual compila esse código-objeto gerando um arquivo
binário.
Uma vez que um compilador gera com sucesso um código-objeto, este último pode ser executado
diretamente pelo computador.
O código-objeto é a entrada para o interpretador, o qual executa o programa.
Um compilador lê, linha por linha, o código do programa, executando a instrução especí�ca de cada linha.
Data Resp.: 22/11/2023 20:27:43
Explicação:
Um compilador gera um código-objeto a partir do código fonte, que pode ser executado diretamente pelo
computador após ser gerado com sucesso. O código-objeto é uma versão traduzida do programa em uma
linguagem de baixo nível compreendida pelo computador.
O que faz a análise léxica?  
(IBGE/2019) Linguagens de programação são notações para se descrever computações para pessoas e para
máquinas. O sistema de software que faz essa tradução é denominado compilador. Um exemplo tradicional desse
tipo de sistema possui fases para traduzir a entrada, que está em uma linguagem original (programa fonte), para
uma linguagem destino (programa objeto). Diante do exposto, assinale a alternativa que descreve a fase do
analisador semântico.
Os compiladores são responsáveis por abstrair a complexidade da programação e proporcionar uma vida mais
tranquila para os desenvolvedores. Sobre a análise léxica e sintática executadas pelos compiladores, assinale a
opção correta.
 
8.
Veri�ca se as estruturas do programa irão fazer sentido 4 durante a execução; 
Lê caractere por caractere do texto encontrando sequências que constituem tokens;  
Veri�ca se a estrutura gramatical do programa está correta;  
É um sistema que aceita como entrada um programa escrito em uma linguagem de
programação e produz como resultado um programa equivalente em outra linguagem;  
Tratar erros de tipo no programa fonte;  
Data Resp.: 22/11/2023 20:27:48
Explicação:
A resposta correta é: Lê caractere por caractere do texto encontrando sequências que
constituem tokens;  
 
9.
Terceira fase do compilador. Utiliza a árvore de sintaxe e a tabela de símbolos para veri�car a consistência do
programa fonte com a de�nição da linguagem.
Segunda fase do compilador. Responsável por criar a árvore de sintaxe a partir dos tokens produzidos pelo
analisador léxico.
Última fase do compilador. Responsável por gerar o executável através do código otimizado.
Quarta fase do compilador. Responsável por gerar o código intermediário após a análise sintática.
Primeira fase do compilador. Etapa antes da análise léxica responsável por eliminar da árvore de sintaxe os
comentários.
Data Resp.: 22/11/2023 20:27:53
Explicação:
Durante a análise semântica, são realizadas veri�cações como a compatibilidade de tipos, o uso correto das
variáveis, a declaração adequada das funções, entre outros aspectos especí�cos da linguagem de programação.
O objetivo é garantir que o programa fonte esteja de acordo com as regras e de�nições da linguagem, evitando
erros semânticos que poderiam levar a comportamentos inesperados ou inconsistentesdurante a execução.
 
10.
O analisador sintático processa diretamente o programa fonte a procura de erros. 
Os analisadores léxico e sintático somente se comunicam via tabela de simbolos.
Um analisador léxico serve como o passo �nal de um analisador sintático.
Um analisador léxico gera a entrada para o analisador sintático.
Técnicas para análise léxica são mais complexas do que as necessárias para a análise sintática. 
Data Resp.: 22/11/2023 20:27:58
Explicação:
O analisador léxico realiza o primeiro passo da etapa de análise da compilação. Uma de suas responsabilidades é
gerar a entrada para o analisador sintático.
    Não Respondida      Não Gravada     Gravada
Exercício inciado em 22/11/2023 20:26:43.

Continue navegando