PROGRAMAÇÃO I. Introdução

Tamanho: px
Começar a partir da página:

Download "PROGRAMAÇÃO I. Introdução"

Transcrição

1 PROGRAMAÇÃO I Introdução

2 Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação (ou codificação) do Algoritmo em alguma Ling. de Programação

3 Introdução 3 Princípios da Solução de Problemas Entendimento do problema Criação de uma sequência de operações (ou ações) que, quando executadas, produzem a solução do problema Descrição desse conjunto de ações Codificação (uso de uma linguagem de programação) Resolução de Problema Programação

4 Processamento de Dados 4 Entrada Processamento Saída Qualquer atividade ou conjunto de atividades ordenadamente realizadas que, utilizando informações (ou dados) básicos, efetua transformações para obter novas informações (ou dados) como resultado

5 Programa 5 Dispositivo de Entrada Processamento Dispositivo de Saída Teclado, Mouse, etc Linguagem de Programação Programa Instruções (comandos) a serem executadas pelo computador Impressora, Video, Disco, etc

6 Algoritmo X Programa 6 Algoritmo É uma sequência de passos que visa atingir um objetivo Codificação Programa Instruções (comandos) passo a passo para ser executado pelo computador Converter as declarações de um algoritmo em um conjunto de instruções numa linguagem de programação específica Código

7 Linguagem de Programação Linguagem de Alto Nível Linguagem de Montagem Linguagem de Máquina 7

8 Linguagem de Máquina Código na forma binária (ou hexadecimal) Necessidade de conhecer as instruções da máquina e seus respectivos códigos de operação Necessidade de conhecer os componentes (registradores) do processador (UCP) e os endereços de memória Ex: Programa para calcular

9 Linguagem de Montagem Assembly Language Instruções escritas através de símbolos Cada instrução corresponde a uma única instrução em linguagem de máquina Necessidade de converter o programa para a linguagem de máquina Processo chamado de Montagem realizado por um programa chamado Montador (ou Assembler) Ex: programa para calcular LD HL,23 LD BC, 100 ADD HL, BC

10 Processo de Montagem 10 Código Fonte Programa original em linguagem de montagem Montagem Montador Código Objeto Programa resultante em linguagem binária

11 Linguagem de Alto Nível 11 Estruturadas de acordo com a compreensão do programador Cada instrução pode corresponder a dezenas de instruções de máquina orientada ao problema Necessidade de converter o programa para linguagem de máquina Processo chamado de Compilação realizado por um programa chamado Compilador Ex. Linguagens: Fortran, Pascal, C, Java Ex: Programa para calcular A=23 B=100 TOTAL=A+B

12 Processo de Compilação 12 Código Fonte Programa original em linguagem de alto nivel Compilação Compilador Código Objeto Programa em linguagem binária

13 Funções do Compilador Compilação é semelhante a montagem porém é é um processo mais complexo e demorado (diferente da relação 1:1 das linguagens de montagem) Também chamada de tradução Realiza várias tarefas: Análise léxica Análise sintática Análise semântica Criação do código binário 13

14 Funções do Compilador Análise léxica Verificar se todos os símbolos (comandos ou não) utilizados são permitidos pela linguagem (Ex: atribuição em Pascal é :=, em C é = ) Análise sintática Verifica a estrutura de cada comando Análise semântica Análise semântica estática (regras de compilação) dos comandos Ex: Desvio para uma linha que não existe 14

15 Ligação ou Linkedição Facilidade criada para evitar que o programador precise codificar todas as operações Algumas operações já são disponibilizadas (no sistema) em código binário pelas linguagens 15 O código é buscado e integrado ao programa que está sendo desenvolvido Processo chamado de linkedição (ou ligação) realizado por um linkeditor (ou ligador)

16 Ligação ou Linkedição Exemplo de códigos (funções) existentes: Impressão, raiz quadrada, comparação de dois nomes, etc. 16 Esses códigos objetos (rotinas) são organizados em Bibliotecas Identificados pelo nome da rotina Incorporados no programa a partir de uma chamada de biblioteca

17 Processo de Linkedição 17 Código Fonte Programa original em linguagem de alto nível Compilação Compilador Código Objeto Programa em linguagem binária (arquivos.obj ) Ligação Ligador/ Linkeditor Biblioteca 1 Biblioteca 2 Biblioteca... Código Executável Programa resultante em linguagem binária (arquivos.exe ou.com )

18 Funções do Linkeditor 18 Quando o compilador encontra uma chamada à rotina de biblioteca, cria uma referência externa não resolvida Linkeditor analisa todo o código objeto procurando por referência externa não resolvida Para cada referência externa não resolvida Procura na biblioteca a rotina correspondente Quando encontra, substitui a linha de comando pelo código objeto encontrado na biblioteca

19 Execução 19 Execução propriamente dita do código executável Existem bibliotecas dinâmicas que são carregadas somente na execução Processo realizado por um programa chamado carregador (ou loader) Existem carregadores (loaders) que fazem toda a linkedição e execução ao mesmo tempo (sem armazenar código executável, ou seja, o código é gerado mas não armazenado)

20 Processo de Execução Completa 20 Código Fonte Programa original em linguagem de alto nível Compilação Compilador Código Objeto Programa em linguagem binária Ligação Ligador/ Linkeditor Biblioteca 1 Biblioteca 2 Biblioteca... Código Executável Programa resultante em linguagem binária Ligação Carregador

21 Interpretação 21 Usado por linguagens de alto nível Execução das três fases (compilação, linkedição e execução) de uma só vez Processo chamado de interpretação realizado por um programa chamado interpretador Lê comando converte em código executável executa (antes que o comando seguinte seja lido) Ex. linguagens: PHP, Python, Perl

22 Compilação X Interpretação Compilação Menor consumo de memória Utilização de partes comuns (rotinas de repetição) uma única vez 22 Interpretação Maior consumo de memória Necessidade de partes comuns (rotinas de interpretação) várias vezes Necessidade de carregar o código fonte na memória durante a execução Execução mais lenta (necessidade de tradução, linkedição e execução)

23 Etapas de desenvolvimento e execução de um programa Desenvolver o algoritmo Elaborar como solucionar passo a passo o problema Envolve o que chamamos de lógica de programação Codificar o algoritmo Escrever o algoritmo em uma linguagem de programação Interpretar ou Compilar Linkeditar Executar o programa 23

24 Linguagem C 24 É uma linguagem de alto nível com uma sintaxe bastante estruturada e flexível tornando sua programação bastante simplificada. Programas em C são compilados, gerando programas executáveis. O C compartilha recursos tanto de alto quanto de baixo nível, pois permite acesso e programação direta do microprocessador (rotinas podem ser facilmente implementadas usando instruções em Assembly).

25 Compiladores de C 25 Os mais famosos são os softwares da Borland e da Microsoft, que são bons e oferecem muitos recursos. O problema é que estes compiladores são caros e voltados principalmente para programadores experientes, que podem fazer uso dos recursos avançados destes programas.

26 Compiladores de C 26 Existem muitos compiladores de C/C++ no mercado. Para quem está ainda aprendendo existem várias opções de compiladores freeware (software livre, de graça ), por exemplo: Dev-C++, CodeBlocks, Borland C++ Compiler, etc GNU C/C++ - gcc Para nos ajudar a aprender a programar em C utilizaremos um dos mais populares compiladores freeware, o DevC++.

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

Aula 2 - Programação de Computadores - CI208 1/21 Aula 2 - Programação de Computadores - CI208 Professor: Leonardo Gomes leonardog@inf.ufpr.br Universidade Federal do Paraná Brazil 2016 - Segundo semestre Aula 2 - Programação de Computadores - CI208 1/21

Leia mais

Linguagem de Programação

Linguagem de Programação Linguagem de Programação aula 4 Engenharia Elétrica e Engenharia de Automação Introdução à Computação 1.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) Programas Programas são seqüências de instruções

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais CAP 2: Conceitos de Hardware e Software Prof. MSc. Diego R. Moraes diegorm@anhanguera.com Download de todo conteúdo da disciplina https://sites.google.com/site/diegorafaelmoraes/downloads

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

Algoritmos Computacionais

Algoritmos Computacionais UNIDADE 1 Processador e instruções Memórias Dispositivos de Entrada e Saída Software ARQUITETURA BÁSICA UCP Unidade central de processamento MEM Memória E/S Dispositivos de entrada e saída UCP UNIDADE

Leia mais

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

Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação Para executar uma tarefa qualquer, um computador precisa receber instruções precisas sobre o que fazer. Uma seqüência adequada

Leia mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Parte 04 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

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

Ferramentas Programação. UDESC - Prof. Juliano Maia 1 Ferramentas Programação UDESC - Prof. Juliano Maia 1 Í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

Leia mais

Compiladores. Introdução à Compiladores

Compiladores. Introdução à Compiladores Compiladores Introdução à Compiladores Cristiano Lehrer, M.Sc. Introdução (1/2) O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem

Leia mais

Algoritmos. Prof. Jonatas Bastos Site:

Algoritmos. Prof. Jonatas Bastos   Site: Algoritmos Prof. Jonatas Bastos Email: jonatasfbastos@gmail.com Site: http://jonatasfbastos.wordpress.com/ 1 Dúvidas! p p p Como os computadores entendem os algoritmo? Os computadores não entendem os passos

Leia mais

Linguagens de Programação

Linguagens de Programaçã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.

Leia mais

Aula 23: Noções de Compilação, Montagem, Link-edição, e Interpretação

Aula 23: Noções de Compilação, Montagem, Link-edição, e Interpretação Aula 23: Noções de Compilação, Montagem, Link-edição, e Interpretação Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Compilação, Montagem, Link-edição,

Leia mais

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

a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1. a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1. Estruturada 2. Orientada a eventos 3. Orientada a objetos d) Sistemas Operacionais

Leia mais

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

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Montador (assembler)

Montador (assembler) Montador (assembler) Linguagem Assembly Linguagem de máquina Montador (assembler) Traduz um programa fonte em linguagem de montagem (linguagem assembly) em um módulo-objeto (em linguagem de máquina) não

Leia mais

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

Introdução a Ciência da Computação Ministério da Educação Universidade Tecnológica Federal do Paraná Câmpus Santa Helena Introdução a Ciência da Computação Bacharelado em Ciência da Computação Professor : Agnaldo da Costa 1 Camadas do Usuário

Leia mais

Compiladores I Prof. Ricardo Santos (cap 1)

Compiladores I Prof. Ricardo Santos (cap 1) Compiladores I Prof. Ricardo Santos (cap 1) Compiladores Linguagens de programação são notações que permitem descrever como programas devem executar em uma máquina Mas, antes do programa executar, deve

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza.

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Fundamentos de Programação CI-240-EST Tópicos da disciplina: Apresentação: modelo de um computador, algoritmos, programas,

Leia mais

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

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

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

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha Conceitos Lógica de Programação técnica de encadear pensamentos

Leia mais

Construção de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014.

Construção de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014. Construção de Compiladores Capítulo 1 Introdução José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2014.2 1/22 1 Linguagens de programação 2 Compilação 2/22 Tópicos 1

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES AULA 03 PROFº RITIELLE SOUZA DISTRIBUIÇÃO LÓGICA DISTRIBUIÇÃO LÓGICA Arquitetura de Von Neumann Uma unidade central de processamento recebe informações através de uma unidade

Leia mais

Estrutura e Funcionamento dos Computadores (Conceitos Básicos)

Estrutura e Funcionamento dos Computadores (Conceitos Básicos) Estrutura e Funcionamento dos Computadores (Conceitos Básicos) Sistema Computacional Peopleware (usuário) Software (programas) Hardware (máquina) Hardware Corresponde à parte material, aos componentes

Leia mais

Projeto de Compiladores

Projeto de Compiladores Projeto de Compiladores FIR Faculdade Integrada do Recife João Ferreira 26 e 27 de fevereiro de 2007 Agenda da Aula Revisão Linguagem de Programação Tradutores Compilador As Fases de Um Compilador Linguagem

Leia mais

Linguagem de Montagem do NeanderX

Linguagem de Montagem do NeanderX Universidade Estácio de Sá Curso de Informática Arquitetura de Computadores Linguagem de Montagem do NeanderX 11.5.2006 Geração Programa Executável Linguagens de Programação As linguagens de programação

Leia mais

Arquitetura e Organização de Computadores. Compiladores e processamento

Arquitetura e Organização de Computadores. Compiladores e processamento Arquitetura e Organização de Computadores Compiladores e processamento Verificar a existência dos pacotes: - GCC (Gnu C Compiler); - GDB (Gnu Debuger); - Libc (blibliotecas C); - nano, vi, emacs ou outro

Leia mais

Capítulo 1. Aspectos Preliminares

Capítulo 1. Aspectos Preliminares Capítulo 1 Aspectos Preliminares Tópicos do Capítulo 1 Razões para estudar conceitos de linguagens de programação Domínios de programação Critérios de avaliação de linguagens Influências no projeto de

Leia mais

Introdução a Programação

Introdução a Programação Introdução a Programação Prof. André Gustavo Duarte de Almeida andre.almeida@ifrn.edu.br docente.ifrn.edu.br/andrealmeida Aula 01 Informática e a Programação Roteiro Informática Pensar e Programar Atividades

Leia mais

Introdução à Computação

Introdução à Computação UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Introdução à Computação Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Histórico da Computação Prof. Yandre

Leia mais

LISTA DE EXERCÍCIOS 01 INTRODUÇÃO À INFORMÁTICA

LISTA DE EXERCÍCIOS 01 INTRODUÇÃO À INFORMÁTICA Informática Aplicada 2009.2 Campus Angicos LISTA DE EXERCÍCIOS 01 Professor: Araken de Medeiros Santos INTRODUÇÃO À INFORMÁTICA 1. Cite alguns problemas que o uso de válvulas provocava nos computadores

Leia mais

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

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

Leia mais

Linguagens de Programação Aula 3

Linguagens de Programação Aula 3 Aula 3 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada... Classificação das LPs (nível, geração e paradigma) Paradigmas Imperativo, OO, funcional, lógico e concorrente 2/33 Na aula de hoje...

Leia mais

Análise de Dados em Oc. Física

Análise de Dados em Oc. Física Análise de Dados em Oc. Física Aula 1 - Introdução Paulo S. Polito, Ph.D. polito@usp.br Instituto Oceanográfico da Universidade de São Paulo P. S. Polito (IOUSP) Análise de Dados em Oc. Física 1 / 26 Roteiro

Leia mais

BCC201 Introdução à Programação. Prof. Saul Delabrida 2013/2

BCC201 Introdução à Programação. Prof. Saul Delabrida 2013/2 BCC201 Introdução à Programação Prof. Saul Delabrida 2013/2 Como um programa é criado? Compilação por linha de comando Introdução à linguagem C 2 Como um programa é criado? 3 Quando queremos digitar um

Leia mais

Aula 2 - Introdução Cleverton Hentz

Aula 2 - Introdução Cleverton Hentz Aula 2 - Introdução Cleverton Hentz Sumário de Aula } Programas } Linguagens de Programação } Formas de Estruturação de Algoritmos 2 Programas } Os algoritmos são utilizados na construção de programas

Leia mais

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

Introdução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Aula 03 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação Linguagens de Programação A primeira linguagem de programação foi criada por Ada Lovelace. Amiga

Leia mais

Introdução à Informática

Introdução à Informática Introdução à Informática Alexandre Meslin (meslin@nce.ufrj.br) Objetivo do Curso Apresentar os conceitos básicos de informática, de software e de hardware. Introduzir os conceitos relativos à representação

Leia mais

MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador

MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador Kelly Rosa Braghetto DCC IME USP 25 de março de 2014 MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador DCC IME USP 1

Leia mais

Compiladores. Conceitos Básicos

Compiladores. Conceitos Básicos Compiladores Conceitos Básicos Processadores de Linguagem De forma simples, um compilador é um programa que recebe como entrada um programa em uma linguagem de programação a linguagem fonte e o traduz

Leia mais

Algoritmo de Programação. Aula1

Algoritmo de Programação. Aula1 Algoritmo de Programação Aula1 Conceituação Muitas definições podem ser dadas à palavra algoritmo. Atualmente, tem-se associado algoritmo à computação, mas este não é um termo restrito à computação ou

Leia mais

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

TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE Professora: Isabela C. Damke isabeladamke@hotmail.com Linguagem de Programação Uma linguagem de programação é um conjunto de símbolos (

Leia mais

SSC510 Arquitetura de Computadores 1ª AULA

SSC510 Arquitetura de Computadores 1ª AULA SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura

Leia mais

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan Introdução aos computadores, à Internet e à World Wide Web Prof. Marcelo Roberto Zorzan História do Java Origem Linguagem desenvolvida pela Sun Microsystems Sintaxe similar ao C++ Inicialmente chamada

Leia mais

Organização Básica de computadores e linguagem de montagem

Organização Básica de computadores e linguagem de montagem Organização Básica de computadores e linguagem de montagem Prof. Edson Borin 1 o Semestre de 2012 Regras do Curso http://www.ic.unicamp.br/~edson/disciplinas/mc404/2012-1s/ Porque Aprender Linguagem de

Leia mais

GFM015 Introdução à Computação

GFM015 Introdução à Computação GFM015 Introdução à Computação Noções básicas sobre os componentes de microcomputadores (cont...) - Terminologia: Sw, Hw, Programas, Bit, Byte e Códigos Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/ic

Leia mais

Aula 02. MC Algoritmos e Programação de Computadores. Algoritmos: Definição e Exemplos.

Aula 02. MC Algoritmos e Programação de Computadores. Algoritmos: Definição e Exemplos. Aula 02 MC 102 - Algoritmos e Programação de Computadores Algoritmos: Definição e Exemplos. 2o. Sem. 2007 Algoritmos e Programação de Computadores - Turmas I J K L 1 Programação de Computadores Atividade

Leia mais

Slides trabalhados durante a quinta aula

Slides trabalhados durante a quinta aula Slides trabalhados durante a quinta aula prática Estruturas de Controle de Fluxo 3. Laços de repetição (continuação) Exercício: Construa um algoritmo, representando-o através de um pseudocódigo e de um

Leia mais

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO Apresentação da ferramenta de programação. Comandos de entrada e saída Prof. Alex Camargo alexcamargoweb@gmail.com Linguagem C A linguagem

Leia mais

FACULDADE BATISTA MINEIRA - CST Banco de Dados Estruturas de Dados - Variáveis

FACULDADE BATISTA MINEIRA - CST Banco de Dados Estruturas de Dados - Variáveis Variável, na Matemática, é um termo utilizado em substituição de outro, normalmente, desconhecido. É utilizado para representar um número ou um conjunto. No contexto da programação de computadores, uma

Leia mais

Gerência de Memória. Execução de um Programa (1) Introdução. Introdução

Gerência de Memória. Execução de um Programa (1) Introdução. Introdução Introdução Gerência de Memória (Aula 18) Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos residentes na memória principal, melhor será

Leia mais

Introdução. Nível da Linguagem de Montagem. Linguagem de Montagem (2) Linguagem de Montagem (1) Linguagem de Montagem

Introdução. Nível da Linguagem de Montagem. Linguagem de Montagem (2) Linguagem de Montagem (1) Linguagem de Montagem Nível da Linguagem de Montagem (Aula 15) Linguagem de Montagem Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Introdução Tradutores Programas que convertem um programa

Leia mais

Disciplina de Introdução à Ciência da Computação Laboratório de ICC (Estatística)

Disciplina de Introdução à Ciência da Computação Laboratório de ICC (Estatística) USP - ICMC - SSC SSC 0801-1o. Semestre 2013 Disciplina de Introdução à Ciência da Computação Laboratório de ICC (Estatística) Prof. Fernando Santos Osório (Prática) / Prof. Cláudio Toledo (Teoria) Email:

Leia mais

Arquitetura e Organização de computadores

Arquitetura e Organização de computadores Arquitetura e Organização de computadores Aula 1: Organização e evolução de computador, parte 2 Prof. MSc. Pedro Brandão Neto, pedroobn@gmail.com Sistemas de Informação - UNDB Introdução 2 Máquinas Multiníveis

Leia mais

Programação de Computadores I Introdução. Prof. Ramon Figueiredo Pessoa

Programação de Computadores I Introdução. Prof. Ramon Figueiredo Pessoa Programação de Computadores I Introdução Prof. Ramon Figueiredo Pessoa 1 Conceitos Básicos O computador só consegue: Armazenar dados em disco Imprimir Relatórios gerar gráficos realizar cálculos 5 4 3

Leia mais

Aula 3 Máquina Multinível

Aula 3 Máquina Multinível Ciências da Computação Disciplina: Ciência da Computação e Profissão Professora: Simone Jaqueline Ferreira de Almeida Aula 3 Máquina Multinível Máquina Multinível - Computador Visão Tradicional de um computador:

Leia mais

Gerência de Memória Introdução Considerações: Recurso caro e escasso; Programas só executam se estiverem na memória principal; Quanto mais processos residentes na memória principal, melhor será o compartilhamento

Leia mais

Projeto de Algoritmos

Projeto de Algoritmos Projeto de Algoritmos Introdução aos Sistemas Computacionais Prof. Ernani Viriato de Melo / Reginaldo Costa http://www.ernani.eti.br http://reginaldofazu.blogspot.com 2º Semestre - 2008 Conceitos Básicos

Leia mais

Introdução a Computação

Introdução a Computação O que é um computador? Um computador é uma coleção de componentes que realizam operações lógicas e aritméticas sobre um grande volume de dados. (F. K. Miyazawa) Um computador é composto por: Introdução

Leia mais

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM Curso de C Introdução 1 Introdução Roteiro: Recordando Algoritmos Linguagem de Programação O computador Instruções de Máquina Níveis de Abstração Compilação 2 Algoritmos Recordando: Algoritmo: conjunto

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 2 Princípios de Programação Prof. Belarmino Linguagem de Computadores Internamente os computadores usam instruções e armazenam os dados no formato numérico binário

Leia mais

TCC Organização de Computadores I Turma :A1 Lista 3-GABARITO. 1. A figura abaixo mostra o diagrama da implementação para a UCP estudada em sala.

TCC Organização de Computadores I Turma :A1 Lista 3-GABARITO. 1. A figura abaixo mostra o diagrama da implementação para a UCP estudada em sala. UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO TCC4.7-Organização Computadores I Turma :A Lista 3-GABARITO. A figura abaixo mostra o diagrama da implementação

Leia mais

Autômatos e Linguagens

Autômatos e Linguagens Autômatos e Linguagens Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Agosto, 2016 1 / 41 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores

Leia mais

Apostila de Fortran. É uma pseudo-linguagem a qual oferece recursos para que o programador possa codificar e testar os seus algoritmos.

Apostila de Fortran. É uma pseudo-linguagem a qual oferece recursos para que o programador possa codificar e testar os seus algoritmos. Apostila de Fortran Fortran Uma das linguagens de programação mais velhas, o FORTRAN foi desenvolvido por uma equipe de programadores conduzida por John Backus na IBM, e foi primeiramente publicada em

Leia mais

Computador Simplificado Conceitos p.ex. FLUXO de execução

Computador Simplificado Conceitos p.ex. FLUXO de execução Computador Simplificado Conceitos p.ex. FLUXO de execução Conceitos Computador Simplificado Memória com 16 posições: E0, E1, E15 Dispositivo de entrada: cartões Dispositivo de saída: impressora Processador/ULA

Leia mais

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

2 Paradigmas de linguagens de programação João B. Rocha- Junior. As linguagens evoluem com o passar do tempo Agenda Paradigmas de Linguagens de ção joao@ecomp.uefs.br Principais paradigmas de linguagem de programação imperajvo funcional declaração Departamento de Ciências Exatas Universidade Estadual de Feira

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira

Leia mais

CP Introdução à Informática Prof. Msc. Carlos de Salles

CP Introdução à Informática Prof. Msc. Carlos de Salles CP 1015.1 Prof. Msc. Carlos de Salles PROGRAMA 1. CONCEITO DE SISTEMAS 1.1 Sistemas e sua classificação 1.2 Informações e Dados 1.3 O Processamento de Dados 1.4 O Computador e sua História 2. ESTRUTURA

Leia mais

Arquitetura e Organização de computadores

Arquitetura e Organização de computadores Arquitetura e Organização de computadores Aula 1: Organização e evolução de computador, parte 1 Prof. MSc. Pedro Brandão Neto pedroobn@gmail.com Sistemas de Informação - UNDB Introdução Computador Digital

Leia mais

CONCEITOS DE ALGORITMOS

CONCEITOS DE ALGORITMOS CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são

Leia mais

AGT0001 Algoritmos Aula 01 O Computador

AGT0001 Algoritmos Aula 01 O Computador AGT0001 Algoritmos Aula 01 O Computador Karina Girardi Roggia karina.roggia@udesc.br Departamento de Ciência da Computação Centro de Ciências Tecnológicas Universidade do Estado de Santa Catarina 2016

Leia mais

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES

LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES LÓGICA DE PROGRAMAÇÃO INTRODUÇÃO À PROGRAMAÇÃO DE COMPUTADORES 1. Introdução à Lógica de Programação 1.1. Lógica? Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo.

Leia mais

Linguagem C. Eliane Pozzebon

Linguagem C. Eliane Pozzebon Linguagem C Eliane Pozzebon Material de Apoio de C Site da disciplina: http://www.univasf.edu.br/~eliane.pozzebon Slides de aulas Exercícios Dev-C++: um ambiente de programação interativo e gratuito para

Leia mais

Prof. Adriano Maranhão COMPILADORES

Prof. Adriano Maranhão COMPILADORES Prof. Adriano Maranhão COMPILADORES LINGUAGENS: INTERPRETADAS X COMPILADAS Resumo: Linguagem compilada: Se o método utilizado traduz todo o texto do programa, para só depois executar o programa, então

Leia mais

Aspectos preliminares

Aspectos preliminares Aspectos preliminares Linguagens de Programação Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. http://github.com/malbarbo/na-lp-copl

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE MATEMÁTICA profericomartins@unemat.br

Leia mais

Conceitos básicos sobre computadores

Conceitos básicos sobre computadores SSC0800 - ICC1 Teórica Introdução à Ciência da Computação I Conceitos básicos sobre computadores Prof. Claudio Fabiano Motta Toledo Apresentação utiliza transparências elaboradas pelo prof. Vanderlei Bonato.

Leia mais

Universidade Veiga de Almeida Algoritmos e Linguagem I

Universidade Veiga de Almeida Algoritmos e Linguagem I Aula 1 Conteúdo: 1. Apresentação da disciplina 2. Contextualização e definições: 2.1. Algoritmos 2.2. Programas 2.3. Linguagens de programação 2.4. Sintaxe e semântica 2.5. Desenvolvimento de programas

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I Sistemas Operacionais I Revisão de conceitos Sistemas Operacionais I Dionisio Gava Junior Componentes básicos Componentes Básicos da Tecnologia da Informação Hardware CPU, Memória e Periféricos de E/S.

Leia mais

Algoritmo e Programação Matemática

Algoritmo e Programação Matemática Algoritmo e Programação Matemática Fundamentos de Algoritmos Parte 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Dados A funcionalidade principal de um computador

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Prof. Eduardo Simões de Albuquerque Instituto de Informática UFG 1o. Semestre / 2006 Adaptado do material do prof. Fábio Moreira Costa Programa e Introdução Assunto do curso

Leia mais

Prof. Benito Piropo Da-Rin. Arquitetura, Organização e Hardware de Computadores - Prof. B. Piropo

Prof. Benito Piropo Da-Rin. Arquitetura, Organização e Hardware de Computadores - Prof. B. Piropo Prof. Benito Piropo Da-Rin UCP ou microprocessador: Circuito Integrado inteligente (capaz de cumprir diferentes funções determinadas por instruções ) CI capaz de efetuar todas as operações necessárias

Leia mais

Organização e Arquitetura de Computadores INTRODUÇÃO

Organização e Arquitetura de Computadores INTRODUÇÃO Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo

Leia mais

Algoritmos Fundamento e Prática

Algoritmos Fundamento e Prática Everton Coimbra de Araújo Algoritmos Fundamento e Prática 3 a Edição Ampliada e Atualizada Visual Books Sumário Prefácio... 15 Introdução... 17 Capítulo 1 - Os Cursos de Informática e Computação... 23

Leia mais

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

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação COMO UM PROGRAMA ESCRITO

Leia mais

Linguagens compiladas: C++ Fora do livro adoptado

Linguagens compiladas: C++ Fora do livro adoptado Linguagens compiladas: C++ Fora do livro adoptado (rep.) Conceitos iniciais Computador Um computador é genericamente uma máquina programável capaz de receber, processar, e fornecer informação. Computador

Leia mais

As fases de um compilador

As fases de um compilador As fases de um compilador Compilando um programa simples estrutura de um compilador formas de organização de um compilador processo de execução de uma linguagem de alto-nível Compilando um programa simples

Leia mais

Tecnologia da Informação. Softwares. Universidade Estadual de Goiás. Prof. Elisabete Tomomi Kowata

Tecnologia da Informação. Softwares. Universidade Estadual de Goiás. Prof. Elisabete Tomomi Kowata Universidade Estadual de Goiás Câmpus de Ciências Sócio-Econômicas e Humanas de Anápolis Curso de Administração Tecnologia da Informação Softwares Prof. Elisabete Tomomi Kowata betetk2010@gmail.com Roteiro

Leia mais

INFORMÁTICA APLICADA AULA 02 ALGORITMOS

INFORMÁTICA APLICADA AULA 02 ALGORITMOS UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 ALGORITMOS Profª ª Danielle Casillo ALGORITMOS Um algoritmo é uma sequência de instruções

Leia mais

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores

Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise

Leia mais

Compiladores e Computabilidade

Compiladores e Computabilidade Compiladores e Computabilidade Prof. Leandro C. Fernandes UNIP Universidade Paulista, 2013 GERAÇÃO DE CÓDIGO INTERMEDIÁRIO Geração de Código Intermediário Corresponde a 1ª etapa do processo de Síntese

Leia mais

Conteúdo. Introdução a compiladores Tradução x Interpretação Processo de Compilação

Conteúdo. Introdução a compiladores Tradução x Interpretação Processo de Compilação Compiladores Conteúdo Introdução a compiladores Tradução x Interpretação Processo de Compilação Quando se inventou o computador criou se uma máquina a mais, quando se criou o compilador criou se uma nova

Leia mais

Como construir um compilador utilizando ferramentas Java

Como construir um compilador utilizando ferramentas Java Como construir um compilador utilizando ferramentas Java p. 1/2 Como construir um compilador utilizando ferramentas Java Aula 1 - Introdução Prof. Márcio Delamaro delamaro@icmc.usp.br Como construir um

Leia mais

Introdução ao Estudo dos Computadores

Introdução ao Estudo dos Computadores 1 Capítulo 1 Introdução ao Estudo dos Computadores A execução de instruções é um dos pontos centrais num sistema computacional. Vários aspectos na definição e implementação da arquitetura de um computador

Leia mais

As fases de um compilador

As fases de um compilador As fases de um compilador Paradigmas de LP Métodos de Implementação de LP Compilando um programa simples estrutura de um compilador formas de organização de um compilador processo de execução de uma linguagem

Leia mais

Algoritmos e Técnicas de Programação

Algoritmos e Técnicas de Programação Algoritmos e Técnicas de Programação Introdução a Algoritmos Jonathan Pereira Jonathan.pereira@ifrn.edu.br Sumário Introdução a algoritmos Linguagem de programação Elaboração de programas Sumário Introdução

Leia mais

Técnicas Avançadas de Programação

Técnicas Avançadas de Programação Sumário Técnicas Avançadas de Programação Prof. João Marcos M. da Silva Departamento de Engenharia de Telecomunicações Escola de Engenharia Universidade Federal Fluminense Agosto de 2011 Prof. João Marcos

Leia mais

Introdução à Programação. Ceça Moraes

Introdução à Programação. Ceça Moraes Introdução à Programação Ceça Moraes Conteúdo Algoritmos Representação Exercícios Linguagens de Programação Compilador Interpretador 2 Lógica O que é lógica? Ciência que estuda as leis do raciocínio. Correção/validação

Leia mais

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES SISTEMAS DE COMPUTAÇÃO. Cristina Boeres

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES SISTEMAS DE COMPUTAÇÃO. Cristina Boeres FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES SISTEMAS DE COMPUTAÇÃO Cristina Boeres Sistema de Computação! Conjunto de componentes integrados com o objetivo de manipular dados e gerar informações úteis.

Leia mais

MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador

MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador Kelly Rosa Braghetto DCC IME USP 14 de março de 2017 MAC2166 Introdução à Computação Aula 1 Como Funciona um Computador DCC IME USP 1

Leia mais

Exercícios de Sistemas Operacionais 3 B (1) Gerência de Dispositivos de Entrada e Saída

Exercícios de Sistemas Operacionais 3 B (1) Gerência de Dispositivos de Entrada e Saída Nome: Exercícios de Sistemas Operacionais 3 B (1) Gerência de Dispositivos de Entrada e Saída 1. A gerência de dispositivos de entrada e saída é uma das principais e mais complexas funções de um sistema

Leia mais