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

Documentos relacionados
Estrutura e funcionamento básico de um computador

1 Introdução à Programação O que é? Para que serve?... 1

Compiladores. Introdução à Compiladores

Sistema Computacional

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

INTRODUÇÃO À PROGRAMAÇÃO. Introdução. Sérgio Carlos Portari Júnior

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

Programação de Computadores:

Fundamentos de Programação 1

Fundamentos de Programação 1

Aula teórica 7. Preparado por eng.tatiana Kovalenko

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

Conceitos básicos sobre computadores (continuação)

Introdução à Computação

Revisão: linguagens de programação

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I

Introdução à Computação

Linguagens de Programação Classificação

PROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc.

3. Linguagem de Programação C

Conceitos de Linguagens de Programação

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

Desenvolvimento de Aplicações Desktop

Introdução à Computação

Informática I. Aula Aula 18-29/10/2007 1

Programação de Computadores

LAPRO I. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática - FACIN. Prof. Dr. Rafael Garibotti

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

Programação de Computadores

PROGRAMAÇÃO I. Introdução

Informática I. Aula 9. Aula 9-27/09/2006 1

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

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

Introdução à Programação de Computadores Fabricação Mecânica

Programação de Computadores

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

Linguagem de Montagem do NeanderX

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

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

Apresentação. Informação geral + Conceitos iniciais

Linguagens de Programação Aula 3

Linguagens de Programação

AJProença, Sistemas de Computação, UMinho, 2017/18 1

Linguagens de Programação

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

Compiladores. Introdução

Projeto de Compiladores

Universidade Veiga de Almeida Algoritmos e Linguagem I

Introdução à Computação MAC0110

ORGANIZAÇÃO DE COMPUTADORES

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

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

Montador (assembler)

Aspectos preliminares

INTRODUÇÃO À PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

Linguagens de Programação

Ferramentas Programação. UDESC - Prof. Juliano Maia 1

Introdução à Computação Parte 2

Introdução à Programação / Programação I

Métodos de implementação de linguagens. Kellen Pinagé

Introdução. Parte 01. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

Algoritmos e Programação

Informática I. Aula 14. Aula 14-10/10/2007 1

Infraestrutura de Hardware. Funcionamento de um Computador

Introdução a Ciência da Computação

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

Histórico de Linguagens de Programação

Introdução a Programação de Jogos

Computação Eletrônica

Programação I Aula 2 Apresentação da linguagem Python

Algoritmos e Programação

2 Paradigmas de linguagens de programação João B. Rocha- Junior. As linguagens evoluem com o passar do tempo

Paradigmas de Programação

Linguagens de Programação

Introdução aos Computadores e Programação

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

Linguagens de Programação. Introdução. Carlos Bazilio

Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO

CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO

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

Algoritmos Computacionais

Programação I Apresentação

II.1 Conceitos Fundamentais. Uma delas é programar o =>

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

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

Linguagens de Programação

Máquinas. Visão geral O que você precisa Fatores de sucesso O futuro. realizar algo, precisa que alguém m lhe indique o que fazer V.V.

Paradigmas de Programação

Prof. Sandro Wambier

Linguagens de Programação Princípios e Paradigmas

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

SCC-120 INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO

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.

Linguagens compiladas: C++ Fora do livro adoptado

Transcrição:

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

Linguagens de Programação

Linguagens de Programação Uma linguagem de programação é um sistema de escrita formal para enunciar a execução de operações em computador, composta por: Uma terminologia ou um conjunto de termos, palavras e sinais, que assumem determinados significados (semântica); Um conjunto de regras que estipulam o uso correto de termos, para construir enunciações válidas (sintaxe).

Linguagens de Programação As linguagens de programação, de acordo com as suas características, são, normalmente, agrupadas em Gerações. Existem até ao momento 5 gerações de Linguagens: 1ª Geração Linguagem Máquina 2ª Geração Linguagem Assembly 3ª Geração Pascal, C, Cobol, etc. 4ª Geração CLIPPER, SQL 5ª Geração C++, Java, Delphi, etc. A 5ª geração é, normalmente, conhecida como contendo as linguagens que permitem a Programação Orientada por Objectos.

1ª Geração - Linguagens Máquina É a mais elementar das linguagens e a única que o computador entende. Consiste num conjunto muito detalhado de instruções em criptograma que controla os circuitos internos do computador. Sendo assim, um programa escrito em linguagem máquina para um tipo de computador não pode ser processado noutro sem sofrer alterações significativas. Gottfried, Byron S., Programação em Pascal, McGraw Hill Cada computador tem um processador com uma linguagem própria (linguagem máquina). O processador vai buscar à memória sequências de bits e interpreta cada uma como uma instrução a executar segundo regras determinadas. Exemplo dum programa em linguagem máquina: SCRAM: 00010001 01010010 00110011

2ª Geração - Linguagens Assembly A linguagem assembly permite usar mnemónicas menos crípticas para simbolizar instruções máquina. Exemplo: Se X, Y, Z corresponderem aos endereços 1, 2 e 3, o programa anterior em Assembly fica: LDA X ADD Y STA Z Assembladores ou Assembler Programa que traduz Assembly para linguagem máquina.

3ª Geração A terceira geração de linguagens de programação surge com as chamadas linguagens de Alto Nível. O seu princípio de codificação está mais próximo do raciocínio humano. Estas linguagens são independentes da máquina, possibilitando a portabilidade de software. Esta geração engloba as chamadas Linguagens Procedimentais ou Imperativas e as Declarativas.

4ª Geração Existe um corte radical entre a 3ª e a 4ª geração de linguagens. Existe maior ligação entre a 3ª e 5ª gerações do que entre a 3ª e 4ª gerações. As linguagens de 4ª geração surgem com o advento dos Sistemas de Gestão de Bases de Dados. São linguagens de alto nível que incorporam ferramentas informáticas capazes de acelerar e facilitar o desenvolvimento de aplicações informáticas, principalmente ligadas à gestão e bases de dados. Um dos exemplos é o SQL.

5ª Geração A 5ª geração é, normalmente conhecida como contendo as linguagens que permitem a Programação Orientada por Objetos. Esta é uma geração de Muito Alto Nível, elevando o nível de abstração das estruturas e do tratamento dos dados, apoiando-se também nos conceitos das linguagens de declaração atrás descritas.

Evolução Histórica 1950... FORTRAN 1960...ALGOL-60...COBOL...LISP... SIMULA ALGOL-68 PL/I BASIC 1970...Pascal... Smalltalk C PROLOG Modula-2 ML 1980...Ada...DBASE-II... Eifell C++ Miranda Java Delphi Orientado a objectos Imperativo Funcional Lógico

Linguagem Natural Linguagens de Programação Baixo Nível Assembly Alto Nível Pascal, C, etc. Programa-fonte Programa-fonte Programas Tradutores Assemblador Compilador Interpretador Programa-objecto, Executável ou Código máquina Programa-objecto, Executável ou Código máquina Linguagem Máquina Azul, Artur Augusto, Técnicas e Linguagens de Programação, Porto Editora

Interpretador vs Compilador Interpretador O programa fonte é traduzido e executado instrução a instrução de um modo interactivo. A vantagem do interpretador reside na correcção dos erros, uma vez que é feita em cada passo de execução. Compilador O programa escrito na linguagem fonte é traduzido para linguagem máquina e posteriormente executa-se o programa já traduzido (programa objeto). A vantagem é que o o programa é traduzido uma única vez, gerando-se um programaobjeto (executável). Sempre que se quiser correr o programa não é necessário voltar a traduzi-lo.

Processo de Compilação input Programa Compilador Programa Máquina fonte Objecto output

Exercícios 1. Quais as principais diferenças entre uma linguagem de baixo nível e uma de alto nível? Indique alguns exemplos dos dois tipos de linguagens atrás referidas. 2. A 4ª geração de linguagens consiste num aperfeiçoamento das linguagens de 3ª geração. Comente. 3. Qual a linguagem que o computador entende? 4. Distinga entre compilador e interpretador. 5. Qual a diferença entre um programa fonte e um programa objeto.