Você está na página 1de 9

ARQUITETURAS E ORGANIZAÇÕES

DE COMPUTADORES
Compilação de Programas
LINGUAGEM CÓDIGO TRADUTOR

Linguagem de Alto Nível 1+2+3 Compilador

Linguagem Assembly LOAD 1 Assembler


ADD 2
ADD 3

Linguagem de Máquina 00000001 00000001 Nenhum


00000010 00000010
00000011 00000011
Compilação de programa
• Em geral, todos os programas usados no seu
dia-a-dia são desenvolvidos em uma
linguagem de alto nível
– Java, C, Delphi
• O compilador traduz o programa de alto nível
em uma sequência de instruções de
processador
– O resultado dessa tradução é o programa em
linguagem de montagem (Assembly language)
Compilação de programa
• A linguagem de montagem é uma forma de
representar textualmente as instruções oferecidas
pela arquitetura, já que as mesmas são representadas
internamente na forma de números binários
– Cada arquitetura possui uma particular linguagem de
montagem
• No programa em linguagem de montagem, as
instruções são representadas através de mnemônios,
que associa o nome da instrução à sua função
– ADD (soma)
– SUB (subtração)
Compilação de programa
Linguagem de programação
• Conjunto bem definido de símbolos, regras sintáticas e
semânticas, utilizado para escrever programas de computador.
Em função de suas peculiaridades, cada linguagem de
programação tem seu próprio compilador para cada família de
equipamentos.

Compilado
• É um programa de computador que substitui cada instrução
de uma linguagem de programação por um conjunto de
instruções equivalentes de uma linguagem mais próxima do
processador. Assim, o processador executa programa em
linguagem binária.
Compilação de programa
• O Programa em Linguagem de Montagem é
convertido para um programa em código objeto
pelo montador (assembler).
• o montador traduz diretamente uma instrução
da forma textual para a forma de código
binário.
• É sobre a forma binária que a instrução é
carregada na memória e interpretada pelo
processador.
Compilação de programa
• Programas complexos são normalmente
estruturados em módulos.
• Cada módulo é separadamente compilado e
submetido ao montador, gerando diversos
módulos em código objeto
• Esse módulos são reunidos pelo ligador
(linker) resultando finalmente no programa
executável que é carregado na memória

Você também pode gostar