SlideShare uma empresa Scribd logo
1
Linguagens
de
Programação
Universidade Federal do Rio Grande do Norte
Centro de Tecnologia
Departamento de Computação e Automação
Professor Responsável:
Luiz Affonso Henderson Guedes de Oliveira
Prof. Do Estágio Docente:
Kliger Kissinger F. Rocha
Valnaide Gomes Bittencourt
Turma:
Engenharia Química – 2004.1
Natal, RN, abril/2004
2
LINGUAGENS DE
PROGRAMAÇÃO
 Usadas para descrever algoritmos; isto é,
seqüências de passos que levam à solução
de um problema.
 Permitir que os usuários especifiquem
como estes passos devem ser seqüenciados
para resolver um problema.
 Especificar algoritmos com precisão.
3
Tipos de Linguagem
 As linguagens de baixo nível
– Restritas a linguagem de máquina
– Forte relação entre as operações implementadas pela
linguagem e as operações implementadas pelo
hardware.
 As linguagens de alto nível
– Aproximam-se das linguagens utilizadas por humanos
para expressar problemas e algoritmos
– Cada declaração numa linguagem de alto nível
equivale a várias declarações numa linguagem de
baixo nível.
4
Primeiras Linguagens
 Programadores usavam linguagem de máquina
– Seqüências de dígitos binários (0s e 1s).
– Por exemplo, a instrução “some 1 + 1” deveria ser representada
como: 10100100
 Muitas desvantagens:
– Grande probabilidade de erro em todos os estágios do processo
de programação.
– Mesmo sendo com algoritmos simples resulta em longos
programas, o que dificulta o processo de validação e detecção de
erros.
– O cálculo de endereços de memória devem ser feitos
manualmente, com um árduo trabalho e uma grande
probabilidade de erros.
5
Assembler
 Algumas das desvantagens podem ser superadas fazendo
com que o computador seja o responsável pelo estágio de
tradução.
 O programa ainda é escrito em termos de operações
básicas de máquina, mas a tradução em código binário é
feita pelo computador.
 O programa que faz essa tradução é chamado de
assembler
 Exemplo: ADD 1,1
 Trata do problema de cálculo de endereço, usando nomes
em formato de texto para endereçar os dados.
6
Linguagens de Alto Nível Vs
Linguagens de Baixo Nível
 Alto nível
– Problemas podem ser solucionados muito mais
rapidamente e com muito mais facilidade
– A solução do problema não necessita ser
obscurecida pelo nível de detalhes necessários em
um programa em linguagem de baixo nível.
– O programa em linguagem de alto nível é
normalmente fácil de seguir e entender cada passo
da execução.
7
Linguagens de Alto Nível Vs
Linguagens de Baixo Nível
 Baixo nível
– Indicada para funções que precisam
implementar instruções de máquina
específicas que não são suportadas por
linguagens de alto nível
– A grande eficiência e o reduzido tamanho
dos programas
– Impossibilidade de uso de linguagens de alto
nível (hardware simples)
8
Histórico das Linguagens de
Programação
 Existem centenas de linguagens de programação
 Agrupadas em 4 gerações:
– Primeira geração: linguagem de máquina
– Segunda geração: grande quantidade de bibliotecas de
software, sistemas de execução em tempo real e
desenvolvimento de gerenciadores de base de dados.
– Terceira geração: capacidade procedural e estrutural
– Quarta geração: sistemas especialistas,
desenvolvimento de inteligência artificial execução
dos programas em paralelo.
9
Processamento de Linguagens
 Embora seja teoricamente possível a construção
de computadores especiais, capazes de executar
programas escritos em uma linguagem de
programação qualquer, os computadores
existentes hoje em dia são capazes de executar
somente programas em uma linguagem de nível
baixo, a linguagem de máquina.
 Linguagens de máquina: rapidez de execução
de programas, do custo de sua implementação
10
Processamento de Linguagens
 Linguagens de programação: facilidade na
construção e da confiabilidade de programas
 Um problema básico:como uma linguagem de
nível mais alto pode ser implementada em um
computador cuja linguagem de máquina é
bastante diferente, e de nível bem mais baixo.
 Existem basicamente duas alternativas para esta
implementação: interpretação e tradução.
11
Interpretação
 Nesta solução, as ações indicadas pelos
comandos da linguagem são diretamente
executadas.
 Mais precisamente, um interpretador é um
programa que executa repetidamente a seguinte
seqüência:
1. Obter o próximo comando do programa.
2. Determinar que ações devem ser
executadas.
3. Executar estas ações.
12
Tradução
 Nesta solução, programas escritos em
linguagem de alto nível são traduzidos para
versões equivalentes em linguagem de
máquina, antes de serem executados.
 Esta tradução é feita em vários passos. Por
exemplo:
– Inicialmente traduzidos para código
Assembly (compilador)
– Depois ser traduzido para código relocável
(objeto), em linguagem de máquina
– O programa inteiro é carregado na memória
principal, como código executável de
máquina.

Mais conteúdo relacionado

PDF
Programação 1
PPT
Linguagem de programação
PPT
Int. sistemas de informação iii
PDF
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
PDF
Aula 3 - Lógica de Programação
PDF
Linguagens de programação 03-12-09
PDF
Linguagens de programação 03-12-09
PDF
Linguagen..
Programação 1
Linguagem de programação
Int. sistemas de informação iii
Introdução à Computação Aula 09 - Algoritmos (Linguagens de Programação)
Aula 3 - Lógica de Programação
Linguagens de programação 03-12-09
Linguagens de programação 03-12-09
Linguagen..

Semelhante a linguagens_de_programacao.ppt (20)

ODP
Aula01 - Analise e Programação
PDF
2-Compreender os principais conceitos de desenvolvimento.pdf
PDF
Paradigmas de Linguagens de Programação - Classificações
PDF
Paradigmas de Linguagens de Programação - Introdução
PDF
Plataforma net pdf
PPTX
Linguagem da programação
PPTX
Linguagem da programação
DOCX
Trabalho linguagem python
PPTX
Linguágens de programação
PDF
PDF
Linguagens-de-Programacao-Da-Maquina-ao-Usuario.pptx.pdf
PPT
Desenvolvimento de Jogos
PDF
Cap02
PDF
Cap02
PDF
Cap02
PPTX
Aula 02 informática aplicada - sistemas operacionais
PPT
Técnicas_Implementação
PDF
Paradigmas de Linguagem
PDF
Aula 03 - Interpretador [mr_@@@@@].pdf
PPTX
Do alto para o baixo nível - Entendendo as Diferenças
Aula01 - Analise e Programação
2-Compreender os principais conceitos de desenvolvimento.pdf
Paradigmas de Linguagens de Programação - Classificações
Paradigmas de Linguagens de Programação - Introdução
Plataforma net pdf
Linguagem da programação
Linguagem da programação
Trabalho linguagem python
Linguágens de programação
Linguagens-de-Programacao-Da-Maquina-ao-Usuario.pptx.pdf
Desenvolvimento de Jogos
Cap02
Cap02
Cap02
Aula 02 informática aplicada - sistemas operacionais
Técnicas_Implementação
Paradigmas de Linguagem
Aula 03 - Interpretador [mr_@@@@@].pdf
Do alto para o baixo nível - Entendendo as Diferenças
Anúncio

Mais de Jadna Almeida (20)

PPTX
Introdução Segurança e Auditoria.pptx
PPTX
Tópicos em Sistemas de Informação e Web I.pptx
PPT
PadroesGRASP.ppt
PPT
lect22.ppt
PPT
Aula 02- Projeto de Interfaces.ppt
PDF
Aula03_04_ModelosProcessos.pdf
PDF
2019_Aula 1 - Introdução à Engenharia de Software.pdf
PDF
Aula 01 e 02 - Engenharia de Software.pdf
PDF
Aula 08LingProgrMauricio.pdf
PDF
Slides 02 - Orientacao a Objetos.pdf
PDF
Slides 04 - A Linguagem Java.pdf
PDF
poo-aula01.pdf
PPT
Aula 2 - Introducao e Algoritmos.ppt
PDF
A04_Orientacao a Objetos 02.pdf
PDF
POO2 - Orientacao a Objetos (1).pdf
PPTX
Aula 2 - Introducao a Algoritmo.pptx
PPT
COMP6411.1.history.ppt
PPT
22_ideals (1).ppt
PPTX
lecture244-mf.pptx
PPTX
lecture26-mf.pptx
Introdução Segurança e Auditoria.pptx
Tópicos em Sistemas de Informação e Web I.pptx
PadroesGRASP.ppt
lect22.ppt
Aula 02- Projeto de Interfaces.ppt
Aula03_04_ModelosProcessos.pdf
2019_Aula 1 - Introdução à Engenharia de Software.pdf
Aula 01 e 02 - Engenharia de Software.pdf
Aula 08LingProgrMauricio.pdf
Slides 02 - Orientacao a Objetos.pdf
Slides 04 - A Linguagem Java.pdf
poo-aula01.pdf
Aula 2 - Introducao e Algoritmos.ppt
A04_Orientacao a Objetos 02.pdf
POO2 - Orientacao a Objetos (1).pdf
Aula 2 - Introducao a Algoritmo.pptx
COMP6411.1.history.ppt
22_ideals (1).ppt
lecture244-mf.pptx
lecture26-mf.pptx
Anúncio

Último (11)

PDF
Manejo integrado de pragas na cultura do algodão
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Eng. Software - pontos essenciais para o início
PPTX
Utilizando code blockes por andre backes
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Mecânico de Manutenção de Equipamentos.pptx
Manejo integrado de pragas na cultura do algodão
Viasol Energia Solar -Soluções para geração e economia de energia
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Eng. Software - pontos essenciais para o início
Utilizando code blockes por andre backes
Arquitetura de computadores - Memórias Secundárias
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Mecânico de Manutenção de Equipamentos.pptx

linguagens_de_programacao.ppt

  • 1. 1 Linguagens de Programação Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Professor Responsável: Luiz Affonso Henderson Guedes de Oliveira Prof. Do Estágio Docente: Kliger Kissinger F. Rocha Valnaide Gomes Bittencourt Turma: Engenharia Química – 2004.1 Natal, RN, abril/2004
  • 2. 2 LINGUAGENS DE PROGRAMAÇÃO  Usadas para descrever algoritmos; isto é, seqüências de passos que levam à solução de um problema.  Permitir que os usuários especifiquem como estes passos devem ser seqüenciados para resolver um problema.  Especificar algoritmos com precisão.
  • 3. 3 Tipos de Linguagem  As linguagens de baixo nível – Restritas a linguagem de máquina – Forte relação entre as operações implementadas pela linguagem e as operações implementadas pelo hardware.  As linguagens de alto nível – Aproximam-se das linguagens utilizadas por humanos para expressar problemas e algoritmos – Cada declaração numa linguagem de alto nível equivale a várias declarações numa linguagem de baixo nível.
  • 4. 4 Primeiras Linguagens  Programadores usavam linguagem de máquina – Seqüências de dígitos binários (0s e 1s). – Por exemplo, a instrução “some 1 + 1” deveria ser representada como: 10100100  Muitas desvantagens: – Grande probabilidade de erro em todos os estágios do processo de programação. – Mesmo sendo com algoritmos simples resulta em longos programas, o que dificulta o processo de validação e detecção de erros. – O cálculo de endereços de memória devem ser feitos manualmente, com um árduo trabalho e uma grande probabilidade de erros.
  • 5. 5 Assembler  Algumas das desvantagens podem ser superadas fazendo com que o computador seja o responsável pelo estágio de tradução.  O programa ainda é escrito em termos de operações básicas de máquina, mas a tradução em código binário é feita pelo computador.  O programa que faz essa tradução é chamado de assembler  Exemplo: ADD 1,1  Trata do problema de cálculo de endereço, usando nomes em formato de texto para endereçar os dados.
  • 6. 6 Linguagens de Alto Nível Vs Linguagens de Baixo Nível  Alto nível – Problemas podem ser solucionados muito mais rapidamente e com muito mais facilidade – A solução do problema não necessita ser obscurecida pelo nível de detalhes necessários em um programa em linguagem de baixo nível. – O programa em linguagem de alto nível é normalmente fácil de seguir e entender cada passo da execução.
  • 7. 7 Linguagens de Alto Nível Vs Linguagens de Baixo Nível  Baixo nível – Indicada para funções que precisam implementar instruções de máquina específicas que não são suportadas por linguagens de alto nível – A grande eficiência e o reduzido tamanho dos programas – Impossibilidade de uso de linguagens de alto nível (hardware simples)
  • 8. 8 Histórico das Linguagens de Programação  Existem centenas de linguagens de programação  Agrupadas em 4 gerações: – Primeira geração: linguagem de máquina – Segunda geração: grande quantidade de bibliotecas de software, sistemas de execução em tempo real e desenvolvimento de gerenciadores de base de dados. – Terceira geração: capacidade procedural e estrutural – Quarta geração: sistemas especialistas, desenvolvimento de inteligência artificial execução dos programas em paralelo.
  • 9. 9 Processamento de Linguagens  Embora seja teoricamente possível a construção de computadores especiais, capazes de executar programas escritos em uma linguagem de programação qualquer, os computadores existentes hoje em dia são capazes de executar somente programas em uma linguagem de nível baixo, a linguagem de máquina.  Linguagens de máquina: rapidez de execução de programas, do custo de sua implementação
  • 10. 10 Processamento de Linguagens  Linguagens de programação: facilidade na construção e da confiabilidade de programas  Um problema básico:como uma linguagem de nível mais alto pode ser implementada em um computador cuja linguagem de máquina é bastante diferente, e de nível bem mais baixo.  Existem basicamente duas alternativas para esta implementação: interpretação e tradução.
  • 11. 11 Interpretação  Nesta solução, as ações indicadas pelos comandos da linguagem são diretamente executadas.  Mais precisamente, um interpretador é um programa que executa repetidamente a seguinte seqüência: 1. Obter o próximo comando do programa. 2. Determinar que ações devem ser executadas. 3. Executar estas ações.
  • 12. 12 Tradução  Nesta solução, programas escritos em linguagem de alto nível são traduzidos para versões equivalentes em linguagem de máquina, antes de serem executados.  Esta tradução é feita em vários passos. Por exemplo: – Inicialmente traduzidos para código Assembly (compilador) – Depois ser traduzido para código relocável (objeto), em linguagem de máquina – O programa inteiro é carregado na memória principal, como código executável de máquina.