Buscar

Processo de Compilação e Análise

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 6 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

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 6, do total de 6 páginas

Prévia do material em texto

1a 
 Questão 
Acerto: 1,0 / 1,0 
 
O que faz a análise léxica? 
 
 
Verifica se a estrutura gramatical do programa está correta; 
 
Tratar erros de tipo no programa fonte; 
 
É 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; 
 
Verifica 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; 
Respondido em 06/06/2023 16:35:21 
 
Explicação: 
A resposta correta é: Lê caractere por caractere do texto encontrando 
sequências que constituem tokens; 
 
 
2a 
 Questão 
Acerto: 1,0 / 1,0 
 
O tradutor que gera um código objeto a partir de uma linguagem de baixo nível é 
o : 
 
 
Carregador 
 Montador 
 
Interpretador 
 
Compilador 
 
Ligador 
Respondido em 06/06/2023 16:29:50 
 
Explicação: 
A resposta correta é: Montador. 
 
 
3a 
 Questão 
Acerto: 1,0 / 1,0 
 
Durante o processo de Análise o scanner lê os caracteres um por um e 
tenta associa-los ao padrão correspondente a algum token. 
Neste processo ele eventualmente pode encontrar algum padrão que não 
corresponda ao tokens. Nesse caso, ele deve: 
 
 
Ignorar totalmente o erro e prosseguir a análise como se nada tivesse 
acontecido. 
 
Passar o erro para o analisador sintático para que este o trate. 
 
 
 
Abortar a análise e reportar imediamente o erro. 
 
Tentar corrigir o erro reescrevendo a parte onde foi encontrado. 
 Continuar a análise após realizar a recuperação do erro e anotá-lo para 
informação posterior. 
Respondido em 06/06/2023 17:28:23 
 
Explicação: 
A resposta correta é: Continuar a análise após realizar a recuperação do erro e 
anotá-lo para informação posterior. 
 
 
4a 
 Questão 
Acerto: 1,0 / 1,0 
 
Considere a seguinte especificação de tokens com sua descrição informal: 
 
SE fosse submetida ao Analisador a seguinte expressão: 
Soma = 0; 
Soma = A + B; 
O sétimo token reconhecido e seu lexema seriam respectivamente: 
 
 Id e A 
 
NumInt e 0 
 
OpArit e + 
 
Id e Soma 
 
TermCom e ; 
Respondido em 06/06/2023 17:27:39 
 
Explicação: 
A resposta correta é: Id e A 
 
 
5a 
 Questão 
Acerto: 1,0 / 1,0 
 
 
 
(Marinha/2011) Uma gramática livre de contexto possui quatro componentes: 
símbolos terminais, símbolos não terminais, símbolo inicial e um conjunto de: 
 
 produções. 
 
volumes. 
 
parágrafos. 
 
tabelas. 
 
artigos. 
Respondido em 06/06/2023 18:17:42 
 
Explicação: 
Uma gramática livre de contexto possui quatro componentes: Símbolos terminais, Símbolos 
não terminais, Símbolo inicial e um conjunto de regras de produção. 
 
 
6a 
 Questão 
Acerto: 1,0 / 1,0 
 
(Marinha/2019 - Adaptada) O processo de compilação é o processo pelo qual o 
código-fonte de uma linguagem de programação é traduzido em um código objeto 
executável por uma máquina. Sobre análise léxica e sintática executadas pelos 
compiladores, assinale a opção correta. 
 
 
Um analisador léxico serve como o passo final de um analisador sintático. 
 
O analisador sintático não é o coração de um compilador, ao contrário do 
processo de parser, que tem papel fundamental no referido processo. 
 Um analisador léxico serve como o passo inicial de um analisador sintático. 
 
Praticamente, todos os compiladores unem a tarefa de analisar a sintaxe em 
uma única parte distinta. 
 
Técnicas para análise léxica são mais complexas do que as necessárias 
para a análise sintática. 
Respondido em 06/06/2023 21:14:45 
 
Explicação: 
O analisador sintático é o componente do compilador responsável por, a partir dos tokens 
gerados pela Análise Léxica, verificar se as expressões de entrada são sentenças válidas na 
gramática da linguagem-fonte, gerando uma árvore sintática que é repassada para o 
analisador semântico visando à continuidade da compilação. 
 
 
7a 
 Questão 
Acerto: 1,0 / 1,0 
 
(IDIB/2020 - Adaptada) As linguagens de programação que utilizamos para 
construção de aplicações são de fácil entendimento para um programador, pois são 
conhecidas como linguagens com alto nível de abstração. No entanto, este código 
não pode ser executado diretamente pelo computador, pois o mesmo reconhece 
apenas a linguagem de máquina. Assinale a alternativa que indica corretamente o 
nome do programa que, durante sua execução, realiza operações de análise léxica, 
análise sintática, análise semântica e síntese. 
 
 
interpretador 
 
 
 compilador 
 
tradutor 
 
montador 
 
ligador 
Respondido em 06/06/2023 19:23:49 
 
Explicação: 
Um compilador é um software que realiza as etapas de análise léxica, análise sintática, 
análise semântica e síntese para produzir código de máquina a partir de código fonte escrito 
em uma linguagem de programação de alto nível. O compilador traduz o código fonte escrito 
em uma linguagem de programação para uma linguagem de baixo nível (geralmente código 
de máquina), tornando-o executável pelo computador. 
 
 
8a 
 Questão 
Acerto: 1,0 / 1,0 
 
(PEFOCE/2012 - Adaptada) Levando em consideração o processo de compilação, 
avalie as assertivas a seguir: 
I. A tabela de símbolos utilizada no processo de compilação contém informações 
sobre tipos e atributos de cada nome definido pelo usuário no programa. 
II. Essas informações são colocadas na tabela de símbolos pelos analisadores léxico 
e sintático e usadas pelo analisador semântico e pelo gerador de código. 
III. Compiladores são ferramentas de software que convertem código fonte escrito em 
uma linguagem de programação para código de máquina, que pode ser executado 
pelo computador. 
Marque a alternativa correta. 
 
 I, II e III. 
 
III, apenas. 
 
I, apenas. 
 
I e II, apenas. 
 
II, apenas. 
Respondido em 06/06/2023 21:16:59 
 
Explicação: 
Compiladores são ferramentas de software que convertem código fonte escrito em uma 
linguagem de programação para código de máquina, que pode ser executado pelo 
computador. O processo de compilação inclui verificação de erros sintáticos e semânticos 
no código fonte e geração de um arquivo executável que contém instruções que o 
processador do computador entende. 
 
 
9a 
 Questão 
Acerto: 1,0 / 1,0 
 
 
 
Um sistema operacional (SO) é um software que gerencia os recursos de um 
computador e fornece serviços aos programas que estão sendo executados. Sobre o 
Sistema Operacional, analise as afirmativas a seguir. 
 
I. Sistemas monotarefa permitem que todos os recursos do sistema fiquem 
dedicados a uma única tarefa. 
II. Um sistema multitarefa é um tipo de sistema operacional que permite que vários 
programas ou processos sejam executados ao mesmo tempo. 
III. Todos os sistemas atuais são monotarefa, uma vez que utilizam todo seu poder 
computacional para execução do programa em memória. 
 
Marque a alternativa correta. 
 
 
I, apenas. 
 I e II, apenas. 
 
I e III, apenas. 
 
II, apenas. 
 
III e II, apenas. 
Respondido em 06/06/2023 20:06:53 
 
Explicação: 
A afirmação de que todos os sistemas atuais são monotarefa é incorreta, uma vez que a 
grande maioria dos sistemas operacionais modernos são multitarefa. A ideia de que um 
sistema utiliza todo o seu poder computacional para execução de um único programa em 
memória é uma característica de sistemas mais antigos, que não são mais comuns 
atualmente. 
 
 
10a 
 Questão 
Acerto: 1,0 / 1,0 
 
Variáveis são espaços de memória que são usados para armazenar dados ou informações 
em um programa de computador. Elas têm um nome (ou identificador) que é usado para 
acessá-las e podem ter diferentes tipos de dados associados a elas, como números, strings 
de texto, booleanos, entre outros. Avalie o código abaixo escrito em linguagem C 
 
 
 
Onde as variáveis float nota1, nota2 seriam alocadas?Na memória secundária. 
 
No código-objeto. 
 Na área de dados estáticos. 
 
Na fila. 
 
No heap. 
Respondido em 06/06/2023 20:54:46 
 
Explicação: 
As variáveis float nota1 e nota2 são variáveis globais e estão declaradas fora da função principal. 
Sendo assim, elas serão alocadas na área de dados estáticos.

Mais conteúdos dessa disciplina