Sie sind auf Seite 1von 8

Pergunta 1

1.
A respeito do processo em que se define uma linguagem de programao,
importante lembrar que o trabalho realizado por um compilador consistir, entre outras
tarefas, no reconhecimento das sentenas vlidas naquela linguagem. Desta
maneira, qual das seguintes afirmativas pode ser considerada incorreta?

Resposta

a.
Qualquer autmato finito tem um equivalente, autmato finito determinstico
mnimo, que nico.

b.
Toda gramtica livre de contexto gera linguagens reconhecveis por autmatos
de pilha.




c.
Em 1950, a tentativa de projetar uma linguagem universal, a UNCOL, no
obteve sucesso, pois havia uma dificuldade em representar todas as
linguagens, arquiteturas e conjuntos de instrues dentro de um mesmo
projeto.

d.
As linguagens livres de contexto so reconhecidas por autmatos de pilha.


e.
As linguagens irregulares so reconhecidas por autmatos finitos.
0,5 pontos
Pergunta 2
1.
[ENADE 2008] Qual tipo de software tradutor deve ser utilizado para programas em
geral, quando a velocidade de execuo uma exigncia de alta prioridade?
Resposta

a.
Compiladores.

b.
Interpretadores.

c.
Tradutores hbridos.

d.
Macroprocessadores.

e.
Interpretadores de macroinstrues.


0,5 pontos
Pergunta 3
1.
Os diferentes lexemas presentes em uma linguagem de programao podem ser
descritos atravs de um conjunto de expresses regulares, uma vez que apresentam
as caractersticas associadas categoria das linguagens regulares. Assim, podemos
entender que as ferramentas geradoras de analisadores (como o Lex, por exemplo)
constroem seus analisadores lxicos a partir da integrao de diferentes autmatos
finitos determinsticos obtidos por expresses regulares que descrevem cada grupo de
lexemas. Neste contexto, correto afirmar que:
Resposta

a.
Muitas vezes, a gerao automtica de um analisador lxico no possvel,
pois, embora os lexemas possam ser descritos atravs de expresses
regulares, para alguns casos impossvel obter um autmato finito a partir das
tais definies. por esse motivo que as linguagens de programao
apresentam muitos tokens parecidos ou at mesmo iguais, como no caso das
linguagens C, C++, C# e Java, por exemplo.

b.
Todo cdigo produzido por uma ferramenta automtica, como o Lex, por
exemplo, precisa ser ajustado (modificado) para que um analisador lxico
efetivo seja criado. Alteraes concernentes forma de processamento dos
caracteres em caso de comentrios e string so necessrias para o correto
funcionamento do analisador, uma vez que tais elementos admitem que
caracteres especiais sejam utilizados em sua composio.

c.
Tanto as palavras reservadas quanto os identificadores apresentam o mesmo
padro, sendo distinguidos apenas durante a classificao do token, aps
concluda a sua composio. A classificao de cada token obtida de acordo
com o estado final corrente.

d.
Os operadores aritmticos devem receber um tratamento especial, pois muitas
linguagens apresentam formas contradas para combinar, em uma nica
instruo, a operao e uma subsequente atribuio. Um exemplo ocorre no
comando a=a+2, que pode tambm ser codificado em sua forma contrada
a+=2. Tanto para a primeira forma quanto para a segunda, o analisador lxico
deve observar que duas operaes esto sendo realizadas e prover ao
analisador sinttico o mesmo fluxo de tokens para ambos os casos.

e.
O uso de ferramentas que automatizam a construo de analisadores lxicos
precisa ser obrigatoriamente associado com o uso de outras ferramentas
geradoras, pois elas apresentam caractersticas integradas com as demais
etapas e no permitem serem combinadas com cdigos desenvolvidos por
terceiros para as demais fases. Assim, apresentam um aspecto negativo forte
para aqueles que esto aprendendo sobre a construo de compiladores.


0,5 pontos
Pergunta 4
1.
[Poscomp, 2005] No processo de gerao de um cdigo executvel (em linguagem de
mquina) a partir de um programa-fonte, escrito em linguagem de alto nvel (por
exemplo, C) o programa original passa por transformaes e anlises que so
realizadas em diversas fases. De forma simplificada, pode-se dividi-las nas oito (8)
fases apresentadas, em ordem alfabtica, a seguir:
A Alocao de Registradores
B Anlise Lxica
C Anlise Sinttica
D Emisso de Cdigo Assembly
E Link Edio
F Montagem
G Seleo de Instrues
H Verificao de Tipos e Smbolos
Durante o processo de gerao do cdigo executvel a partir do cdigo-fonte, em qual
ordem essas fases so passveis de serem executadas?






Resposta

a.
B C H G A D F E

b.
C B H G A D F E
















c.
B C H G A D E F




d.
B H C G A D F E



e.
B C H A G D E F



0,5 pontos
Pergunta 5
1.
A respeito da relao existente entre linguagens, reconhecedores, compiladores e
outras ferramentas, qual das afirmativas considerada incorreta?

Resposta

a.
As linguagens sensveis a contexto so reconhecidas por mquinas de Turing
com memria limitada.

b.
As linguagens irrestritas so reconhecidas por mquinas de Turing com
memria ilimitada.

c.
Qualquer linguagem regular pode ser reconhecida por um autmato finito.

d.
Metalinguagens so linguagens usadas para elaborar descries formais das
linguagens de programao, sendo a BNF uma metalinguagem popular.

e.
Os pr-processadores so uma classe de interpretadores.
0,5 pontos
Pergunta 6
1.
Dentre os diferentes tipos de mensagens de erro que podem ser reportadas por um
compilador, quais dentre as apresentadas abaixo so de natureza lxica?
Resposta

a.
Identificador no declarado.


b.
Esperado fim de comentrio.

c.
Esperado smbolo X, porm encontrado smbolo Y.



d.
Nmero de parmetros insuficiente (em uma chamada sub-rotina).

e.
Tipo misturado (durante uma atribuio).


0,5 pontos
Pergunta 7
1.
As linguagens de programao podem ser classificadas grosseiramente em dois
grupos: linguagens de alto nvel e linguagens de baixo nvel. O critrio para definir em
que categoria uma determinada linguagem se encaixa est associado ao grau de
abstrao que ela confere a seus utilizadores, ou seja, se apresentar caractersticas
lingusticas que se assemelham mais nossa linguagem, dita de alto nvel; enquanto
ao aproximar-se mais da linguagem de mquina, classificada como de baixo nvel.
Os programas cuja codificao fosse dada em C, Assembly, C#, Java, bytecodes
da Java Virtual Machine, MSIL (Microsoft Intermediate Language) seriam classificados
como escritos em linguagens de nvel:
Resposta

a.

Alto, baixo, alto, alto, baixo e baixo.

b.
Baixo, baixo, alto, alto, baixo e baixo.

c.
Baixo, baixo, alto, baixo, alto e baixo.

d.
Baixo, baixo, alto, alto, alto e alto.

e.
Alto, baixo, alto, alto, alto e alto.


0,5 pontos
Pergunta 8
1.
[ESAF - 2002 - STN - Analista de Finanas e Controle Superior] Assinale a opo
correta.
Resposta

a.
Um programa em linguagem de alto nvel armazenado em um arquivo do tipo
texto.

b.
O cdigo executvel produzido por um compilador pode ser executado em
qualquer plataforma.

c.
Um programa interpretado executa mais rapidamente que um programa
compilado.

d.
Um programa escrito em Linguagem Assembly pode ser executado
diretamente.

e.
Um programa em Linguagem de Mquina pode ser convertido em Linguagem
de Alto Nvel atravs de um compilador.
0,5 pontos
Pergunta 9
1.
[ESAF - 2003 - SRF - Procurador da Fazenda - Superior] (modificada) Qual das
alternativas abaixo CORRETA com relao velocidade de execuo de um
programa de computador escrito em uma linguagem de alto nvel?
Resposta

a.
Programas compilados em tempo de execuo (por um compilador just-in-
time).

b.
Programas compilados para cdigo nativo sempre sero mais rpidos que
programas interpretados.

c.
Programas compilados e interpretados so igualmente rpidos quando a
velocidade de processamento da CPU ultrapassar um determinado patamar.

d.
Programas compilados em plataformas diferentes sempre tero a mesma
velocidade de execuo.

e.
Nenhuma das acima.
0,5 pontos
Pergunta 10
1.
[ESAF - 2001 - SEFAZ-PI - Auditor Superior] Marque a opo correta.
Resposta

a.
O compilador transforma o cdigo-fonte em cdigo-objeto.

b.
O cdigo-objeto gerado pelo programa executvel em uma linguagem
orientada a objetos.

c.
O compilador transforma o cdigo interpretado em cdigo-fonte.

d.
O interpretador transforma o cdigo-objeto em cdigo hexadecimal.

e.
O interpretador o cdigo executvel oriundo de um programa-fonte.

Das könnte Ihnen auch gefallen