Buscar

Fases da Compilação e Conceitos de Linguagens de Programação

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

Prévia do material em texto

Um compilador está verificando 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 verificações são realizadas na fase de:
		
	
	análise léxica.
	
	otimização do código
	 
	análise semântica.
	
	geração do código.
	
	análise sintática.
	Respondido em 07/03/2023 20:03:39
	
	Explicação:
A resposta correta é: análise semântica.
	
		2a
          Questão
	Acerto: 1,0  / 1,0
	
	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 é: 
		
	
	III, V, VI, IV, I e II
	 
	II, VI, V, IV, I e III 
	
	III, IV, V, VI, I e II 
	
	III, IV, VI, V, I e II
	
	II, V, VI, IV, I e III 
	Respondido em 07/03/2023 20:05:37
	
	Explicação:
A resposta correta é: II, VI, V, IV, I e III.
	
		3a
          Questão
	Acerto: 1,0  / 1,0
	
	Os Meta-caracteres são caracteres especiais na especificação de Expressões Regulares, que aumentam muito sua expressividade. Eles podem ser quantificadores, definidores de classes de caracteres, definidores de lista etc.... 
O Meta-caracter que corresponde  a seguinte classe [A-Za-z0-9] é o   
A ordem correta dos passos durante a compilação é: 
		
	
	\c 
	
	\W
	
	\C
	
	\d
	 
	\w
	Respondido em 07/03/2023 20:10:28
	
	Explicação:
A resposta correta é: \w
	
		4a
          Questão
	Acerto: 1,0  / 1,0
	
	 O GALS é um gerador de analisadores léxicos que a partir de expressões regulares cria um autômato finito determinístico que as analisa. 
Para que possa funcionar ele deve ter os seus tokens especificados.  
Como seria a especificação do token no GALS para identificadores (Id) formados pela primeira letra maiúscula sendo seguido de pelo menos uma ou mais letras minúsculas deverá existir pelo menos um letra?
		
	
	Id:[A-Z] [a-z]*.
	
	Id: [A-Za-z]+
	
	Id:[A-Z]*   
	
	Id:[a-z]+ 
	 
	Id:[A-Z] [a-z]+.
	Respondido em 07/03/2023 20:16:46
	
	Explicação:
A resposta correta é: Id:[A-Z] [a-z]+.
	
		5a
          Questão
	Acerto: 1,0  / 1,0
	
	Considere a seguinte gramática
S → XYZ
X → aXb | ε
Y → cYZcX | d
Z → eZYe | f
Levando-se em conta a necessidade de criar a tabela sintática, seriam gerados os conjuntos First e Follow de cada um dos não terminais.
Qual seria o conjunto First de S?
		
	
	{ a, d}
	
	{c, d, e}
	 
	{a, c, d}
	
	{a, c, d, e}
	
	{a, c, e}
	Respondido em 07/03/2023 20:18:54
	
	Explicação:
Resposta correta:  {a, c, d}
	
		6a
          Questão
	Acerto: 1,0  / 1,0
	
	ANO: 2010 BANCA: CESPE ÓRGÃO: INMETRO PROVA: PESQUISADOR - CIÊNCIAS DA COMPUTAÇÃO
Considere que, em uma linguagem de programação hipotética, um comando condicional IF exija o uso de THEN, representando a cláusula então. Nesse caso, se a instrução THEN não for usada no código fonte, uma resposta do compilador na identificação do erro de programação estará
		
	
	no nível lógico
	 
	no nível sintático
	
	nos níveis sintático e semântico, ao mesmo tempo
	
	no nível semântico
	
	no nível léxico
	Respondido em 07/03/2023 20:20:46
	
	Explicação:
Resposta correta: no nível sintático
	
		7a
          Questão
	Acerto: 1,0  / 1,0
	
	As árvores de sintaxe são a forma mais comum de representação intermediária gráfica. Dentre estas árvores temos as de Derivação, Sintática e Derivação Anotada.
Com relação a estas árvores avalie as afirmativas abaixo:
I. Decorar uma árvore é o ato de, durante a fase de parser, realizar a associação dos símbolos aos seus atributos na árvore de derivação.
II. A Árvore Sintática é obtida eliminando-se os nós referentes aos símbolos não terminais na árvore de derivação.
III. A árvore de Derivação possui em suas folhas apenas símbolos não terminais.
Podemos afirmar que está correto o que se afirma apenas em:
		
	
	I e III
	
	II e III
	
	II
	 
	I e II
	
	III
	Respondido em 07/03/2023 20:21:43
	
	Explicação:
Resposta correta: I e II.
A ideia básica é eliminar todos os nós com símbolos não terminais, mantendo apenas os nós com símbolos terminais.
Na árvore de Derivação, cada nó é rotulado por um símbolo da gramática, sendo que os símbolos terminais aparecem nas folhas e os não terminais, nas raízes das subárvores.
 
	
		8a
          Questão
	Acerto: 0,0  / 1,0
	
	Apesar de ser considerada o terceiro passo da etapa de análise, a Análise Semântica é normalmente realizada de forma concomitante com a Análise Sintática, sendo que o parser vai executar as ações semânticas estabelecidas para as produções da gramática.  
A respeito da situação descrita podemos afirmar que: 
I. Quando um esquema de tradução não produz efeitos colaterais ele é chamado de Gramática de Atributos.   
II. O Esquema de Tradução corresponde a uma restrição aplicada a  Gramática Livre de Contexto (GLC) que define a linguagem de programação. 
III. A Tradução Dirigida por Sintaxe é a técnica que permite realizar a Análise Semântica de forma concomitante com a análise sintática. 
É correto o que se afirma apenas em:
		
	
	III
	
	I e III
	
	I e II
	 
	II e III
	 
	I
	Respondido em 07/03/2023 20:28:16
	
	Explicação:
Resposta correta: II e III
	
		9a
          Questão
	Acerto: 0,0  / 1,0
	
	Um programa pode ter parte de sua funcionalidade implementada por um procedimento. Procedimentos são normalmente compilados a parte e depois ligados ao código principal. Quando um procedimento é chamado é criado para ele um Registro de Ativação que possui informações de contexto, suas variáveis locais, parâmetros etc.
Com base nisso se um procedimento G chama um procedimento D que chama um procedimento E podemos afirmar que
 O registro de ativação de E estará no topo da pilha
Porque
Os registros de ativação dos diversos procedimento são empilhados na ordem inversa do retorno
Com base nas afirmativas acima podemos concluir que:
		
	
	As duas afirmativas são falsas
	 
	As duas são corretas e a segunda justifica a primeira
	
	A primeira é falsa e a segunda correta
	 
	A primeira é verdadeira e a segunda falsa
	
	As duas são corretas e a segunda não justifica a primeira
	Respondido em 07/03/2023 20:32:51
	
	Explicação:
Resposta correta: A primeira é verdadeira e a segunda falsa
	
		10a
          Questão
	Acerto: 0,0  / 1,0
	
	Para determinar qual código é mais otimizado podemos utilizar uma métrica que calcule o custo de cada opção e determinar qual é o mais otimizado, ou seja qual tem o menor custo.
Considere um processador com o seguinte conjunto de instruções:
Sabendo que a métrica utilizada gera um custo de 1 para instruções que não acessam a memória RAM e um custo de 2 para as que não acessam analise os trechos de código abaixo
Como base na análise podemos afirmar que o código 2 é melhor que o código 1
Porque
Seu custo é 12 enquanto o do código 1 é 12
Com base nas afirmativas acima podemos concluir que:
 
		
	 
	A primeira é verdadeira e a segunda falsa
	
	As duas são corretas e a segunda justifica a primeira
	 
	A primeira é falsa e a segunda correta
	
	As duas são corretas e a segunda não justifica a primeira
	
	As duas afirmativas são falsas

Continue navegando