Escolar Documentos
Profissional Documentos
Cultura Documentos
Compiladores
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
COMPILADORES
O tema que será tratado neste bloco tem uma característica acadêmica, e a aula terá foco
nas questões de concurso.
Referência: AHO, A.V., ULLMAN, J.D. e SETHI, R.. Compiladores: Princípios, Técnicas e
Ferramentas, LTC, 2008.
Basicamente, o compilador é um programa/software que transforma um código fonte em
código alvo. Ou seja, um arquivo de texto é escrito em uma determinada linguagem de pro-
gramação, depois esse arquivo é salvo e o compilador produz um arquivo que, geralmente,
é executável. Durante o processo de compilação, podem ser emitidos mensagens, erros ou
alertas. A imagem abaixo ilustra esse processo:
5m
Um compilador converte o código escrito em uma linguagem para outra linguagem sem
alterar o significado do programa. Portanto, um compilador é como um tradutor. Também é
esperado que um compilador torne o código de destino eficiente e otimizado em termos de
tempo e espaço. Primeiramente, o programa é escrito em uma linguagem compreensível
aos humanos; depois, isso é transformado em linguagem de máquina, com otimizações. Por
exemplo, quando se traduz um texto do português para o inglês, não se pode fazer uma tra-
dução palavra a palavra, pois isso não funcionaria, já que algumas construções linguísticas
do inglês são diferentes do português. É necessário fazer algumas otimizações nesse pro-
cesso, sem alterar o sentido – é basicamente isso o que ocorre na compilação. O design do
compilador abrange o mecanismo básico de conversão e a detecção e recuperação de erros,
e inclui análise léxica, sintaxe e semântica como front-end e geração e otimização de código
como back-end.
10m
ANOTAÇÕES
www.grancursosonline.com.br 1
DESENVOLVIMENTO DE SISTEMAS
Compiladores
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
www.grancursosonline.com.br 2
DESENVOLVIMENTO DE SISTEMAS
Compiladores
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
www.grancursosonline.com.br 3
DESENVOLVIMENTO DE SISTEMAS
Compiladores
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
DIRETO DO CONCURSO
1. (2018/QUADRIX/CRECI 5º REGIÃO (GO)/PROFISSIONAL DE SUPORTE TÉCNICO/
TECNOLOGIA DA INFORMAÇÃO) Com relação à arquitetura de computadores e a sis-
temas operacionais, julgue o item.
Dentro do ambiente de desenvolvimento, os compiladores convertem programas de
alto nível em linguagens de montagem e os montadores convertem linguagem de mon-
tagem em representações numéricas, tratadas pelo processador.
COMENTÁRIO
A linguagem de alto nível é convertida em linguagem binária em várias fases. Um compila-
dor é um programa que converte linguagem de alto nível em linguagem assembly. Da mes-
ma forma, um assembler (montador) é um programa que converte a linguagem assembly
em linguagem no nível da máquina.
www.grancursosonline.com.br 4
DESENVOLVIMENTO DE SISTEMAS
Compiladores
Viu algum erro neste material? Contate-nos em: degravacoes@grancursosonline.com.br
a. Linkedição.
b. Interpretação.
c. Tradução.
d. Compilação.
e. Edição.
30m
GABARITO
1. C
2. d
�Este material foi elaborado pela equipe pedagógica do Gran Cursos Online, de acordo com a aula
preparada e ministrada pelo professor Tiago Lage Payne de Pádua.
A presente degravação tem como objetivo auxiliar no acompanhamento e na revisão do conteúdo
ministrado na videoaula. Não recomendamos a substituição do estudo em vídeo pela leitura exclu-
siva deste material.
ANOTAÇÕES
www.grancursosonline.com.br 5