Logotipo
Unionpédia
Comunicação
Disponível no Google Play
Novo! Faça o download do Unionpédia em seu dispositivo Android™!
Instalar
Acesso mais rápido do que o navegador!
E sem anúncios!

Compilador

GCC versão 4.0.2 rodando em uma janela xterm. Um programa simples está sendo compilado e então executado. Um compilador é um programa de computador (ou um grupo de programas) que, a partir de um código fonte escrito em uma linguagem compilada, cria um programa semanticamente equivalente, porém escrito em outra linguagem, código objeto.

57 relações: Alfred Aho, Análise léxica, Análise semântica, Análise sintática (computação), Assembly, Auto-hospedagem, Bison, Bytecode, C (linguagem de programação), Código de máquina, Código de três endereços, Código objeto, Código-fonte, Ciência da computação, COBOL, Compilador cruzado, Descompilador, Desmontador, Eclipse (software), Fortran, Grace Hopper, Grafos acíclicos dirigidos, Gramática de atributos, Gramática formal, IBM, IBM 701, Instituto de Tecnologia de Massachusetts, Interpretador, Java (linguagem de programação), JavaCC, JIT, John Backus, Língua portuguesa, Lex, Ligador, Linguagem compilada, Linguagem de programação, Linguagem de programação de alto nível, Linguagem de programação de baixo nível, Linguagem formal, Lisp, Memória, Microprocessador, Notação polonesa, Pré-processador, Programa de computador, Programação automática, Short Code, Sistema A-0, Sistema operativo, ..., Speedcoding, Token, Unidade central de processamento, UNIVAC, Xterm, Yacc, 1984. Expandir índice (7 mais) »

Alfred Aho

Alfred Vaino Aho (Timmins, 9 de agosto de 1941) é um cientista da computação canadense.

Novo!!: Compilador e Alfred Aho · Veja mais »

Análise léxica

Análise léxica é o processo de analisar a entrada de linhas de caracteres (tal como o código-fonte de um programa de computador) e produzir uma seqüência de símbolos chamado "símbolos léxicos" (lexical tokens), ou somente "símbolos" (tokens), que podem ser manipulados mais facilmente por um parser (leitor de saída).

Novo!!: Compilador e Análise léxica · Veja mais »

Análise semântica

Análise semântica é a terceira fase da compilação onde se verificam os erros semânticos, (por exemplo, fazer a divisão de um número inteiro por outro numero float, na linguagem C padrão ANSI)) no código fonte e coletam-se as informações necessárias para a próxima fase da compilação, que é a geração de código objeto. A análise semântica trata a entrada sintática e transforma-a numa representação mais simples e mais adaptada a geração de código. Esta camada do compilador fica igualmente encarregada de analisar a utilização dos identificadores e de ligar cada uma delas a sua declaração. Nesta situação verificar-se que o programa respeita as regras de visibilidade e de porte dos identificadores. Nesta fase é também esperado que no processo da compilação verifique que cada expressão definida tenha um tipo adequado conforme as regras próprias da linguagem. O objetivo da análise semântica é trabalhar nesse nível de inter-relacionamento entre partes distintas do programa. As tarefas básicas desempenhadas durante a análise semântica incluem a verificação de tipos, a verificação do fluxo de controle e a verificação da unicidade da declaração de variáveis. Dependendo da linguagem de programação, outros tipos de verificações podem ser necessários. ETAPAS DA ANÁLISE SEMÂNTICA A análise semântica engloba duas tarefas principais: A saída da fase de análise semântica é anotada na árvore do analisador gramatical. As gramáticas de atributo são usadas para descrever a semântica de estática de um programa. A fase de geração de código intermediário permite a geração de instruções para uma máquina abstrata, normalmente em código de três endereços, mais adequadas à fase de otimização. Esta forma intermediária não é executada diretamente pela máquina alvo. A fase de otimização analisa o código no formato intermediário e tenta melhorá-lo de tal forma que venha a resultar um código de máquina mais rápido em tempo de execução, usando as réguas que denotam a semântica da linguagem-fonte. Uma das tarefas executadas pelo otimizador é a detecção e a eliminação de movimento de dados redundantes e a repetição de operações dentro de um mesmo bloco de programa. E por fim, a fase de geração de código tem como objetivo analisar o código já otimizado é a gerar o um código objeto definitivo para uma máquina alvo. Normalmente este código objeto é um código de máquina relocável ou um código de montagem. Nesta etapa as localizações de memória são selecionadas para cada uma das variáveis usadas pelo programa. Então, as instruções intermediárias são, cada uma, traduzidas numa seqüência de instruções de máquina que realizam a mesma tarefa. Exemplos típicos de erros semânticos são.

Novo!!: Compilador e Análise semântica · Veja mais »

Análise sintática (computação)

árvore da expressão Em ciência da computação e linguística, análise sintática (também conhecida pelo termo em inglês parsing) é o processo de analisar uma sequência de entrada (lida de um arquivo de computador ou do teclado, por exemplo) para determinar sua estrutura gramatical segundo uma determinada gramática formal.

Novo!!: Compilador e Análise sintática (computação) · Veja mais »

Assembly

Motorola MC6800. Assembly ou linguagem de montagem é uma notação legível por humanos para o código de máquina que uma arquitetura de computador específica usa, utilizada para programar códigos entendidos por dispositivos computacionais, como microprocessadores e microcontroladores.

Novo!!: Compilador e Assembly · Veja mais »

Auto-hospedagem

O termo auto-hospedagem foi cunhado para se referir ao uso de um programa de computador como parte de uma cadeia de ferramentas ou sistema operativo para produzir uma nova versão mesmo programa, por exemplo, um compilador que pode compilar o seu próprio código fonte.

Novo!!: Compilador e Auto-hospedagem · Veja mais »

Bison

* Bisonte — animais da família dos bovídeos.

Novo!!: Compilador e Bison · Veja mais »

Bytecode

Em ciência da computação, bytecode (traduzindo ao pé da letra, código em bytes — não confundir com código-máquina) é o resultado de um processo semelhante ao dos compiladores de código-fonte que não é imediatamente executável.

Novo!!: Compilador e Bytecode · Veja mais »

C (linguagem de programação)

C é uma linguagem de programação compilada de propósito geral, estruturada, imperativa, procedural, padronizada pela ISO, criada em 1972, por Dennis Ritchie, no AT&T Bell Labs, para desenvolver o sistema operacional Unix (que foi originalmente escrito em Assembly).

Novo!!: Compilador e C (linguagem de programação) · Veja mais »

Código de máquina

Todo computador possui alguns conjuntos de instruções para seu processador que será capaz de executar.

Novo!!: Compilador e Código de máquina · Veja mais »

Código de três endereços

Em ciência da computação, o código de três endereços é uma forma de representar código intermediário usado por compiladores para auxiliar na implementação das transformações voltadas a melhorar o código.

Novo!!: Compilador e Código de três endereços · Veja mais »

Código objeto

Em programação de computadores, código objeto ou arquivo objeto é o nome dado ao código resultante da compilação do código fonte.

Novo!!: Compilador e Código objeto · Veja mais »

Código-fonte

IDE com suporte a colorização de código. Código-fonte (source code em inglês) é o conjunto de palavras ou símbolos escritos de forma ordenada, contendo instruções em uma das linguagens de programação existentes, de maneira lógica.

Novo!!: Compilador e Código-fonte · Veja mais »

Ciência da computação

A Ciência da Computação lida com fundamentos teóricos da informação, computação, e técnicas práticas para suas implementações e aplicações.

Novo!!: Compilador e Ciência da computação · Veja mais »

COBOL

COBOL (sigla de COmmon Business Oriented Language) - Linguagem Comum Orientada para os Negócios é uma linguagem de programação orientada para o processamento de banco de dados comerciais.

Novo!!: Compilador e COBOL · Veja mais »

Compilador cruzado

Um compilador cruzado (inglês: cross compiler) é um compilador que é capaz de produzir código executável em uma plataforma diferente da qual o compilador está sendo executado.

Novo!!: Compilador e Compilador cruzado · Veja mais »

Descompilador

Descompilador é um programa de computador que realiza a operação inversa de um compilador, transformando código objeto em código fonte.

Novo!!: Compilador e Descompilador · Veja mais »

Desmontador

Um desmontador, desassemblador ou disassembler é um programa de computador que converte código de máquina em código escrito em linguagem de montagem.

Novo!!: Compilador e Desmontador · Veja mais »

Eclipse (software)

Imagem da IDE Eclipse 3.3 no Ubuntu 7.10. Eclipse é um IDE para desenvolvimento Java, porém suporta várias outras linguagens a partir de plugins como C/C++,PHP,ColdFusion, Python, Scala e plataforma Android.

Novo!!: Compilador e Eclipse (software) · Veja mais »

Fortran

A família de linguagens de programação conhecida globalmente como Fortran foi desenvolvida a partir da década de 1950 e continua a ser usada hoje em dia.

Novo!!: Compilador e Fortran · Veja mais »

Grace Hopper

Grace Murray Hopper (Nova Iorque, 9 de dezembro de 1906 — Condado de Arlington, 1 de janeiro de 1992) foi uma analista de sistemas da Marinha dos Estados Unidos nas décadas de 1940 e 1950 e almirante.

Novo!!: Compilador e Grace Hopper · Veja mais »

Grafos acíclicos dirigidos

Em matemática, um grafo acíclico dirigido, (em inglês: directed acyclic graph, ou simplesmente um dag ou DAG), é um grafo dirigido sem ciclo (teoria de grafos); isto é, para qualquer vértice v, não há nenhuma ligação dirigida começando e acabando em v. Estes grafos aparecem em modelos onde não faz sentido que um vértice tenha uma ligação com si próprio.

Novo!!: Compilador e Grafos acíclicos dirigidos · Veja mais »

Gramática de atributos

Uma gramática de atributos é uma formalização que permite definir os atributos para as produções de uma gramática formal, associando estes atributos com valores.

Novo!!: Compilador e Gramática de atributos · Veja mais »

Gramática formal

Em teoria das linguagens formais, uma gramática formal (algumas vezes simplesmente chamada de gramática) é um conjunto de regras de produção de cadeias em uma linguagem formal, ou seja, um objeto que permite especificar uma linguagem ou língua.

Novo!!: Compilador e Gramática formal · Veja mais »

IBM

International Business Machines (IBM) é uma empresa dos Estados Unidos voltada para a área de informática.

Novo!!: Compilador e IBM · Veja mais »

IBM 701

O IBM 701, conhecido como a Calculadora da defesa (Defense Calculator) enquanto em desenvolvimento, foi anunciado ao público em 29 de abril de 1960, e foi o primeiro computador científico comercial da IBM.

Novo!!: Compilador e IBM 701 · Veja mais »

Instituto de Tecnologia de Massachusetts

Instituto de Tecnologia de Massachusetts (Massachusetts Institute of Technology - MIT) é uma universidade privada de pesquisa localizada em Cambridge, Massachusetts, Estados Unidos.

Novo!!: Compilador e Instituto de Tecnologia de Massachusetts · Veja mais »

Interpretador

Interpretadores são programas de computador que leem um código fonte de uma linguagem de programação interpretada e o converte em código executável.

Novo!!: Compilador e Interpretador · Veja mais »

Java (linguagem de programação)

Java é uma linguagem de programação interpretada orientada a objetos desenvolvida na década de 90 por uma equipe de programadores chefiada por James Gosling, na empresa Sun Microsystems.

Novo!!: Compilador e Java (linguagem de programação) · Veja mais »

JavaCC

JavaCC (Java Compiler Compiler) é um gerador de analisador sintático aberto para a linguagem Java.

Novo!!: Compilador e JavaCC · Veja mais »

JIT

Em Ciência da Computação, compilação just-in-time (JIT), também conhecida como tradução dinâmica, é a compilação de um programa em tempo de execução, usando uma abordagem diferente da compilação anterior à execução.

Novo!!: Compilador e JIT · Veja mais »

John Backus

John Warner Backus (Filadélfia, — Ashland) foi um cientista da computação estadunidense.

Novo!!: Compilador e John Backus · Veja mais »

Língua portuguesa

A língua portuguesa, também designada português, é uma língua românica flexiva originada no galego-português falado no Reino da Galiza e no norte de Portugal.

Novo!!: Compilador e Língua portuguesa · Veja mais »

Lex

Em ciência da computação (linguagens de programação), lex é um programa que gera analisadores léxicos.

Novo!!: Compilador e Lex · Veja mais »

Ligador

Ligador (no Brasil, Linker ou Vinculador), em informática, é um programa que liga objetos gerados por um compilador, formando assim o ficheiro executável final.

Novo!!: Compilador e Ligador · Veja mais »

Linguagem compilada

Linguagem compilada é uma linguagem de programação em que o código fonte, nessa linguagem, é executado diretamente pelo sistema operacional ou pelo processador, após ser traduzido por meio de um processo chamado compilação, usando um programa de computador chamado compilador, para uma linguagem de baixo nível, como linguagem de montagem ou código de máquina.

Novo!!: Compilador e Linguagem compilada · Veja mais »

Linguagem de programação

C. Uma linguagem de programação é um método padronizado para comunicar instruções para um computador.

Novo!!: Compilador e Linguagem de programação · Veja mais »

Linguagem de programação de alto nível

Linguagem de programação de alto nível é como se chama, na Ciência da Computação de linguagens de programação, uma linguagem com um nível de abstração relativamente elevado, longe do código de máquina e mais próximo à linguagem humana.

Novo!!: Compilador e Linguagem de programação de alto nível · Veja mais »

Linguagem de programação de baixo nível

Linguagem de programação de baixo nível trata-se de uma linguagem de programação que compreende as características da arquitetura do computador.

Novo!!: Compilador e Linguagem de programação de baixo nível · Veja mais »

Linguagem formal

Entende-se por linguagem formal estudo de modelos matemáticos que possibilitam a especificação e o reconhecimento de linguagens (no sentido amplo da palavra), suas classificações, estruturas, propriedades, características e inter-relacionamentos.

Novo!!: Compilador e Linguagem formal · Veja mais »

Lisp

Lisp é uma família de linguagens de programação concebida por John McCarthy em 1958.

Novo!!: Compilador e Lisp · Veja mais »

Memória

A memória é a capacidade de adquirir, armazenar e recuperar (evocar) informações disponíveis, seja internamente, no cérebro (memória biológica), seja externamente, em dispositivos artificiais (memória artificial).

Novo!!: Compilador e Memória · Veja mais »

Microprocessador

O microprocessador, geralmente chamado apenas de processador, é um circuito integrado que realiza as funções de cálculo e tomada de decisão de um computador.

Novo!!: Compilador e Microprocessador · Veja mais »

Notação polonesa

Notação Polonesa (no Brasil, em Portugal é Notação Polaca) ou Notação de Prefixo é uma forma de notação para lógica, aritmética e álgebra.

Novo!!: Compilador e Notação polonesa · Veja mais »

Pré-processador

Um pré-processador é um programa que recebe texto e efectua conversões léxicas nele.

Novo!!: Compilador e Pré-processador · Veja mais »

Programa de computador

Um programa de computador ou programa informático é um conjunto de instruções que descrevem uma tarefa a ser realizada por um computador.

Novo!!: Compilador e Programa de computador · Veja mais »

Programação automática

Dentro do diversificado leque de categorias de ferramentas que prestam apoio às atividades da Engenharia de Software (CASE), uma específica vem ganhando cada vez mais destaque e, sobre ela, tem-se aplicado muito investimento nos últimos tempos: as Ferramentas de Geração de Código, ou simplesmente Geradores de Código.

Novo!!: Compilador e Programação automática · Veja mais »

Short Code

Short Code foi uma das primeiras linguagens de programação de alto nível já desenvolvida para um computador.

Novo!!: Compilador e Short Code · Veja mais »

Sistema A-0

O sistema A-0 (Arithmetic Language version 0), escrito por Grace Hopper em 1951 e 1952 para o UNIVAC I, provavelmente, segundo Jean E. Sammet, foi o primeiro compilador já desenvolvido para um computador eletrônico.

Novo!!: Compilador e Sistema A-0 · Veja mais »

Sistema operativo

Sistema (Operating System - OS) é um programa ou um conjunto de programas cuja função é gerenciar os recursos do sistema (definir qual programa recebe atenção do processador, gerenciar memória, criar um sistema de arquivos, etc.), fornecendo uma interface entre o computador e o usuário.

Novo!!: Compilador e Sistema operativo · Veja mais »

Speedcoding

Speedcoding ou Speedcode foi a primeira linguagens de programação de alto nível criada para um computador IBM.

Novo!!: Compilador e Speedcoding · Veja mais »

Token

* Token (chave eletrônica).

Novo!!: Compilador e Token · Veja mais »

Unidade central de processamento

A unidade central de processamento ou CPU (Central Processing Unit), também conhecido como processador, é a parte de um sistema computacional, que realiza as instruções de um programa de computador, para executar a aritmética básica, lógica, e a entrada e saída de dados.

Novo!!: Compilador e Unidade central de processamento · Veja mais »

UNIVAC

UNIVAC é uma empresa desenvolvedora de computadores formada em 1950.

Novo!!: Compilador e UNIVAC · Veja mais »

Xterm

O xterm é um emulador de terminais leve e direto.

Novo!!: Compilador e Xterm · Veja mais »

Yacc

yacc (acrônimo para Yet Another Compiler Compiler) é um gerador de analisador sintático desenvolvido por Stephen C. Johnson da AT&T para o sistema operacional Unix.

Novo!!: Compilador e Yacc · Veja mais »

1984

Sem descrição

Novo!!: Compilador e 1984 · Veja mais »

Redireciona aqui:

Compilado, Compiladores, Compilar, Compilação.

CessanteEntrada
Ei! Agora estamos em Facebook! »