Buscar

Ferramentas de Programacao

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

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

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ê viu 3, do total de 27 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

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

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ê viu 6, do total de 27 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

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

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ê viu 9, do total de 27 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

Prévia do material em texto

UDESC - Prof. Juliano Maia 1
Ferramentas Programação
UDESC - Prof. Juliano Maia 2
Índice
 Seção 1 – Linguagens de Programação
 Seção 2 – Interpretador 
 Seção 3 – Compilador / Linkeditor
 Seção 4 – Ambientes de Desenvolvimento
UDESC - Prof. Juliano Maia 3
Linguagens de Programação
Seção 1
 Linguagem de Programação
 LP de Alto Nível
 LP de Baixo Nível
 Interpretador / Compilador
UDESC - Prof. Juliano Maia 4
Linguagem de Programação
 Método padronizado para expressar 
instruções para um computador. 
 Conjunto de regras sintáticas e 
semânticas usadas para definir um 
programa de computador.
UDESC - Prof. Juliano Maia 5
LP de Alto Nível
 Linguagens de programação com um 
nível de abstração relativamente 
elevado, longe do código de máquina e 
mais próximo à linguagem humana. 
 Ex.: COBOL, Pascal, Delphy, Java, C.
UDESC - Prof. Juliano Maia 6
Exemplo Programa C
 Imprime o caracter * em tela:
#include <stdio.h> //adiciona biblioteca padrão de I/O ao programa
int main() { //declara/inicia função “principal” do programa
puts("*"); //escreve o caratcer * em tela
} //finaliza a função “principal” e o programa
UDESC - Prof. Juliano Maia 7
LP de Baixo Nível
 Linguagem de programação mais 
próxima ao código da máquina e, 
portanto, menos abstrata. Possui forte 
relação entre as operações 
implementadas pela linguagem e as 
operações implementadas pelo 
hardware.
 Ex.: Assembly. 
UDESC - Prof. Juliano Maia 8
Exemplo Programa Assembly
 Imprime o caracter * em tela:
.model small ;modelo de memória 
.stack ;espaço de memória para instruções do programa na pilha 
.code ;as linhas seguintes são instruções do programa 
mov ah,2h ;move o valor 2h p/ o registrador ah
mov dl,2ah ;move o valor 2ah p/ o registrador dl (ASCII do caractere *)
int 21h ;interrupção 21h
mov ah,4ch ;função 4ch, sai para o sistema operacional
int 21h ;interrupção 21h
end ;finaliza o programa
UDESC - Prof. Juliano Maia 9
Interpretador / Compilador
 Programas (utilitários) que processam 
linguagens de alto nível, traduzindo-as 
em linguagens de baixo nível.
UDESC - Prof. Juliano Maia 10
Interpretador
Seção 2
 Interpretador
 Fluxo / Iteração Interpretação
 Vantagens / Desvantagens
UDESC - Prof. Juliano Maia 11
Interpretador
 Um interpretador, no momento da 
execução do programa, traduz cada 
instrução do programa e a executa em 
seguida.
UDESC - Prof. Juliano Maia 12
Fluxo / Iteração Interpretação
Dados
Programa Fonte
Saída
Interpretado
r
UDESC - Prof. Juliano Maia 13
Vantagens / Desvantagens
 Vantagem: Permite implementação de 
sub-processos / rotinas dinâmicas, ou 
seja, que podem mudar durante a 
execução do programa.
 Desvantagem:Tempo gasto na 
tradução das instruções de um 
programa toda vez que este for 
executado.
UDESC - Prof. Juliano Maia 14
Compilador / Linkeditor
Seção 3
 Compilador
 Fluxo / Iteração Compilação
 Vantagens / Desvantagens
 Linkeditor
 Processo Compilação - Linkedição
 Bibliotecas
UDESC - Prof. Juliano Maia 15
Compilador
 Um compilador lê um programa e o traduz 
completamente antes que o programa seja 
executado. Neste caso, o programa escrito 
em linguagem de alto nível é chamado de 
código fonte, e o programa traduzido é 
chamado de código objeto. Uma vez que 
um programa é compilado, você pode 
executá-lo repetidamente, sem que precise 
de nova tradução.
UDESC - Prof. Juliano Maia 16
Fluxo / Iteração Compilação
Código Fonte
Dados Arquivo Executável Saída
Compilador
UDESC - Prof. Juliano Maia 17
Vantagens / Desvantagens
 Vantagem: A execução é mais rápida, 
pois o programa executado já se 
encontra totalmente traduzido.
 Desvantagem: Programa totalmente 
estático – não é possível a 
implementação de sub-processos / 
rotinas dinâmicas.
UDESC - Prof. Juliano Maia 18
Linkeditor
 Programa (utilitário) responsável por 
gerar, a partir de um ou mais códigos 
objeto, um único programa executável.
 Suas funções básicas são resolver todas 
as referências simbólicas existentes 
entre os módulos e reservar memória 
para a execução do programa.
UDESC - Prof. Juliano Maia 19
Processo Compilação - Linkedição
Programa Fonte Programa Fonte
Compilador Compilador
Programa Objeto Programa Objeto
Ligador ou 
Linkeditor
Programa Executável
Biblioteca
Biblioteca
UDESC - Prof. Juliano Maia 20
Bibliotecas
 Bibliotecas são conjuntos de sub-rotinas 
(programas ou funções) que podem ser 
utilizadas em qualquer programa.
 A biblioteca stdio.h (Standart Input and 
Output) da linguagem C, por exemplo, é a 
biblioteca que contem todas as 
funcionalidade de leitura / escrita (entrada 
e saída de dados).
UDESC - Prof. Juliano Maia 21
Ambientes de Desenvolvimento
Seção 4
 Ambiente Integrado (IDE)
 O IDE Dev-C++
 Depurador de Programa
UDESC - Prof. Juliano Maia 22
IDE
 IDE, Integrated Development 
Environment ou Ambiente de 
Desenvolvimento Integrado, é um 
utilitário que reúne características e 
ferramentas de apoio ao 
desenvolvimento de software com o 
objetivo de agilizar este processo.
UDESC - Prof. Juliano Maia 23
Exemplo IDE Dev-C++
UDESC - Prof. Juliano Maia 24
Depurador de Programa
 O depurador, ou debuger, é um 
utilitário que permite ao programador 
controlar toda a execução de um 
programa a fim de detectar erros.
UDESC - Prof. Juliano Maia 25
Funcionalidades
 Acompanhar a instrução de um 
programa instrução por instrução.
 Alterar e visualizar o conteúdo de 
variáveis em tempo de execução.
 Implementar “breakpoints” – pontos de 
parada na execução do programa.
UDESC - Prof. Juliano Maia 26
Depurando um Programa ...
UDESC - Prof. Juliano Maia 27
Informações úteis
 Baixe o IDE Dev-c++ (free) em: 
www.superdownloads.com.br
 Em plataforma Linux, não há um IDE similar. 
Neste caso, usar: 
 Editor de texto Kedit
 Utilitário console, para compilação e 
execução: 
gcc –o <arq exe> <código fonte>
./ <arq exe>

Outros materiais