Buscar

Caracteristicas de Linguagem 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 14 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 14 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 14 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

06/03/2012
1
CENTRO UNIVESITÁRIO DE LINS CENTRO UNIVESITÁRIO DE LINS –– UNILINSUNILINS
LABORATÓRIO DE ALGORITMOSLABORATÓRIO DE ALGORITMOS
Conceitos de Linguagem de Programação
Prof. Dr. Wagner José Dizeró
wagner@unilins.edu.br
Recuperando o contexto histórico da evolução das 
linguagens de programação, pode-se dizer que elas 
representam graus variados de abstração da 
arquitetura subjacente, chamada Von Neumann 
(processador, memória e entradas e saídas).
Arquitetura de Von NeumannArquitetura de Von NeumannArquitetura de Von NeumannArquitetura de Von Neumann
06/03/2012
2
Os computadores 
disponíveis no final da 
década de 40 e início da 
década de 50, além dos 
problemas decorrentes da 
tecnologia da época, eram 
difíceis de serem 
programados pela 
ausência de software. 
Uma Linguagem de Programação é um vocabulário
e um conjunto de regras gramaticais usadas
para escrever programas de computador.
Esses programas instruem o computador a realizar
determinadas tarefas específicas.
Cada linguagem possui um conjunto único de
palavras-chave (palavras que ela reconhece) e uma
sintaxe (regras) específica para organizar as
instruções (instruções mesmo) dos programas.
IntroduçãoIntroduçãoIntroduçãoIntroduçãoIntroduçãoIntroduçãoIntroduçãoIntrodução
06/03/2012
3
As linguagens de programação podem ser classificadas, 
em uma escala relativa à sua semelhança com a 
linguagem humana, em:
Linguagem de Máquina
Linguagem Assembly
Linguagem de Alto Nível
Linguagem de Quarta Geração
ClassificaçãoClassificaçãoClassificaçãoClassificaçãoClassificaçãoClassificaçãoClassificaçãoClassificação
Linguagem de MaquinaLinguagem de MaquinaLinguagem de MaquinaLinguagem de MaquinaLinguagem de MaquinaLinguagem de MaquinaLinguagem de MaquinaLinguagem de Maquina
É a linguagem de mais baixo nível de 
entendimento pelo ser humano e a única, na 
verdade, entendida pelo processador (CPU).
É constituída inteiramente de números, o que 
torna praticamente impossível entendê-la 
diretamente.
Cada CPU tem seu conjunto único de linguagem de 
máquina, definido pelo fabricante do chip.
Uma instrução típica em linguagem de máquina 
seria algo como:
0100 1111 1010 0110
06/03/2012
4
Linguagem AssemblyLinguagem AssemblyLinguagem AssemblyLinguagem AssemblyLinguagem AssemblyLinguagem AssemblyLinguagem AssemblyLinguagem Assembly
É a linguagem de nível imediatamente acima da 
linguagem de máquina.
Ela possui a mesma estrutura e conjunto de 
instruções que a linguagem de máquina, porém 
permite que o programador utilize nomes 
(chamados mnemônicos) e símbolos em lugar 
dos números.A conversão da linguagem assembly para a 
linguagem de máquina se chama montagem, e é 
feita por um programa chamado montador (ou 
assembler).
Uma típica instrução em assembly seria :
Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível 
São as linguagens de programação que possuem 
uma estrutura e palavras-chave que são mais 
próximas da linguagem humana, tornando os 
programas mais fáceis de serem lidos e escritos.
Esta é a sua principal vantagem sobre as 
linguagens de nível mais baixo.
Os programas escritos nessas linguagens são
convertidos para a linguagem de máquina através 
de um programa compilador ou de um 
interpretador.
Exemplos: 
FORTRAN, Prolog, Basic, COBOL, 
C,Pascal, Delphi, C++, Java, etc.
06/03/2012
5
Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível Linguagem Alto Nível 
Linguagem 4ª Geração Linguagem 4ª Geração Linguagem 4ª Geração Linguagem 4ª Geração Linguagem 4ª Geração Linguagem 4ª Geração Linguagem 4ª Geração Linguagem 4ª Geração 
Usualmente abreviada por 4GL.
São linguagens de programação com estrutura mais
próxima da linguagem humana do que as linguagens
de programação de alto nível.
A maioria delas é usada para acessar bancos de
dados, a SQL (Structured Query Language) é um
bom exemplo dessa geração.
Por exemplo, um comando típico seria:
SELECT NOME,MATRICULA FROM ALUNOS WHERE
NOME = "Carlos" AND ESTADO IN (“RJ”,”SP”,”MG”)
06/03/2012
6
Um programa escrito em linguagem de alto 
nível e traduzido para a linguagem de 
maquina por um compilador ou cada 
instrução e traduzida por um interpretador.
E natural se admitir que, para que o 
compilador consiga traduzir uma instrução 
escrita com caracteres de algum idioma 
para instruções escritas como seqüência 
de zeros e uns, e necessário que cada 
instrução seja escrita de acordo com regras 
preestabelecidas. 
Como todas as notações formais, uma 
linguagem de programação tem três 
componentes: 
- Um Léxico Um Léxico 
-- Uma Sintaxe Uma Sintaxe 
-- Uma Semântica Uma Semântica 
06/03/2012
7
O léxicoléxico identifica um grupo de símbolos que 
representam uma única entidade, ele a classifica como 
sendo ou um valor numérico, ou uma palavra, ou um 
operador aritmético, e assim por diante. Átomo (token).
O seguinte comando da Linguagem Pascal
A A := B;:= B;
O Léxico da LP estabelece que os símbolos 
AA, := , B , := , B e ; ; 
fazem parte do vocabulário (Gramática) da LP. 
A SintaxeSintaxe da LP corresponde ao conjunto de regras 
que determinam quais sentenças podem ser 
formadas a partir da combinação dos itens léxicos. 
O léxico e a sintaxe estão relacionados com a forma 
dos programas, isto é, como expressões, 
comandos, declarações e outros elementos da LP 
podem ser combinados para forma programas 
válidos. 
06/03/2012
8
O seguinte comando da Linguagem Pascal
A A := B + 2;:= B + 2;
A Sintaxe da LP indica que a sentença formada pelo 
identificador A, o símbolo := , o identificador B, o 
símbolo +, o numero 2 e o símbolo ; designa um 
comando válido de soma. 
A Semântica da LP descreve como as 
construções sintaticamente corretas são 
interpretadas ou executadas.
A semântica esta relacionada com o 
significado dos programas, isto é, como eles se 
comportam quando são executados por 
computadores.
06/03/2012
9
O seguinte comando da Linguagem C
A = B;A = B;A = B;A = B;A = B;A = B;A = B;A = B;
A Semântica da LP indica que esse 
comando deve ser executado de modo a 
substituir o valor de A substituir o valor de A substituir o valor de A substituir o valor de A pelo valor atual de B valor atual de B valor atual de B valor atual de B 
e retornar o valor de A. retornar o valor de A. retornar o valor de A. retornar o valor de A. 
Métodos de Implementação de Métodos de Implementação de Métodos de Implementação de Métodos de Implementação de 
Linguagens de Programação Linguagens de Programação Linguagens de Programação Linguagens de Programação 
06/03/2012
10
Todo e qualquer Programa escrito em uma LP necessita ser 
traduzido para a linguagem de maquina a fim de ser executado. 
Para fazer isso, é necessário aplicar um programa que 
recebe como entrada o código-fonte do programa a ser 
traduzido e gere o código traduzido na linguagem de maquina.
Esse programa tradutor é quem determina como os 
programas na LP serão implementados, isto é, como o código–
fonte traduzido se comportará efetivamente quando executado 
no computador. 
São descritos três métodos gerais de implementação 
de linguagens de programação ,
são eles: 
Compilação
Interpretação Pura
Híbrido
06/03/2012
11
Um CompiladorCompilador traduz o programa fonte inteiro, 
produzindo um outro programa equivalente, em linguagem 
executável.
A vantagem é que o compilador precisa traduzir um 
comando apenas uma única vez, não importando quantas 
vezes ele será executado.
Na prática o compilador é usado para gerar o código 
definitivo (eficiente) de um programa. 
Exemplos de linguagens compiladas :Exemplos de linguagens compiladas :Exemplos de linguagens compiladas :Exemplos de linguagens compiladas :
PascalPascalPascalPascal, C, C, C, C, C, C, C, C++ e ++ e ++ e ++ e outras outrasoutras outras 
06/03/2012
12
Um interpretadorinterpretador traduz o programa fonte um comando 
por vez e chama uma rotina para executar esse 
comando.
A vantagem é que o interpretador não traduz comandos 
que podem não ser executados e pode relatar erros na 
linguagem original em cada ponto de execução. 
Na prática as linguagens interpretadas servem para a 
realização de uma prototipagem rápida. 
Exemplos de linguagens Exemplos de linguagens Exemplos de linguagens Exemplos de linguagens interpretadasinterpretadasinterpretadasinterpretadas
PHP, PrologPHP, PrologPHP, PrologPHP, Prolog, linguagens de script , linguagens de script , linguagens de script , linguagens de script 
06/03/2012
13
HíbridoHíbrido processo que combina tanto a execução 
eficiente quanto a portabilidade de programas pela 
aplicação combinada dos dois métodos anteriores. 
A base para o método hibrido é a existência de um 
código intermediário, mais fácil de ser interpretado e, ao 
mesmo tempo, não especifico de uma de uma plataforma 
computacional. 
O método híbrido é dividido , portanto, em duas etapas: 
compilação para um código intermediário e interpretação 
desse código. 
Exemplos de 
linguagens hibridas 
JAVA e PERL 
06/03/2012
14
Gráfico de Evolução da LPGráfico de Evolução da LP

Outros materiais