Linguagens de Programação

Documentos relacionados
Classificação das linguagens de programação

Sistema Computacional

PROGRAMAÇÃO I. Introdução

Introdução à Computação

Introdução à Computação: Máquinas Multiníveis

INFORMÁTICA: Informação automática

Linguagens de Programação Classificação

Existem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível.

Desenvolvimento de Aplicações Desktop

Programação de Computadores:

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

Paradigmas de Programação

Resolução de Problemas com Computador. Resolução de Problemas com Computador. Resolução de Problemas com Computador

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Disciplina de Algoritmos e Programação

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang

Sistemas Operacionais

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

MC-102 Aula 01. Instituto de Computação Unicamp

a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1.

Informática I. Aula 9. Aula 9-17/05/2006 1

TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Programação Estruturada Aula - Introdução a Linguagem de Programação

Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão.

Fundamentos de Programação 1

Algoritmos Computacionais

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1

Universidade Veiga de Almeida Algoritmos e Linguagem I

Paradigmas de Linguagem de Programação. Aspectos Básicos

Linguagem de Programação

Compiladores. Introdução à Compiladores

Algoritmos e Programação

Infraestrutura de Hardware. Funcionamento de um Computador

Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Programação de Computadores

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

Arquiteturas RISC e CISC. Adão de Melo Neto

COMPILAÇÃO. Ricardo José Cabeça de Souza

Programação: Compiladores x Interpretadores PROF. CARLOS SARMANHO JR

Introdução à Programação. Conceitos Básicos de Programação

Aplicação. Programa Linguagem de Alto Nível. Programa em Linguagem Assembly. Programa em Linguagem Máquina

Introdução à Computação MAC0110

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1)

Programação de Computadores

Estrutura e Funcionamento dos Computadores (Conceitos Básicos)

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

Aula 2 - Programação de Computadores - CI208 1/21

4) Defina o que vem a ser um algoritmo, e porque, o mesmo depende do processo.

Introdução a Programação

9. Software de Sistema - Montadores (capítulo 9 do livro texto)

Introdução. (Aula 2) Organização Estruturada de Computadores

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06

Aula 08 Introdução à Algoritmos. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Algoritmos e Programação

Fundamentos de Programação

Linguagens de máquina, linguagens simbólicas e linguagens de alto nível

Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação

Introdução ao Python. Programa Computacional

Introdução à Computação: Máquinas Multiníveis

Curso Profissional de Gestão e Programação de Sistemas Informáticos. Programação e Sistemas de Informação. Módulo 1. 1ª Parte Prof. Sandra Pais Soares

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ORGANIZAÇÃO COMPUTACIONAL

Algoritmos e Programação

Linguagem de Descrição de algoritmos

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

Memória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA

SSC510 Arquitetura de Computadores 1ª AULA

Capítulo 1. Aspectos Preliminares

Algoritmos. Prof. Jonatas Bastos Site:

3. Linguagem de Programação C

Programação I A Linguagem C. Prof. Carlos Alberto

Transcrição:

Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Linguagens de Programaçã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

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.

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.

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.

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.

Linguagens de Alto Nível Vs Alto nível Linguagens de Baixo 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.

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)

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.

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

1 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.

1 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.

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. 1 Tradução