Introdução à Informática

Slides:



Advertisements
Apresentações semelhantes
INTRODUÇÃO À COMPUTAÇÃO
Advertisements

Componentes de Um Computador
Componentes de Um Computador
Introdução à Programação: uma Abordagem Funcional PD I – Engenharia Elétrica Prof.ª Claudia Boeres 2008/2.
SISTEMAS OPERACIONAIS
Sistemas Operacionais Aula II
Introdução a Algoritmos
Sistemas Operacionais
Introdução à Programação
Noções de Sistemas Operacionais
Arquitetura e organização de computadores.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 32 Departamento de Informática Centro.
Paradigmas de Linguagens Conceitos Básicos
Professor: Erivelto Tschoeke – UDESC/CEPLAN
Softwares.
INTRODUÇÃO À COMPUTAÇÃO
Curso Técnico em Manutenção e Suporte em Informática
O Portal do Estudante de Computação
Formas de Representação de Algoritmos
Introdução a Programação
Professor Fernando Luís
Arquitetura de Computadores
Lógica de Programação UNIDADE 1 – Introdução a) Computador
Revisão de Conceitos Básicos Hardware (Parte 1)
PROGRAMAÇÃO I UNIDADE 1.
Sistemas Operativos (S.O.)
ENGENHARIA DE AUTOMAÇÃO INDUSTRIAL
PCI- Introdução à Computação
Desenvolvimento de Jogos e Entretenimento Digital
INICIAÇÃO À INFORMÁTICA. O que são as Tecnologias de Informação ?... As Tecnologias de Informação dizem respeito a processos de tratamento, controlo e.
Algoritmos 1º Semestre Materia: Informática Profº: Cristiano.
Sistemas Operacionais
Sistemas Operacionais I
Laboratório I Mateus Raeder Material baseado nos originais da
História dos computadores e da programação
Inteligência Artificial
Introdução à Informática
Processamento de dados na UCP e memória UCP
O que são, para que servem e onde podem ser utilizadas?
Faculdade Talentos Humanos - FACTHUS - Algoritmo I - Rogério Rodrigues
SISTEMAS OPERACIONAIS I
ALGORITMOS Intensivo Janeiro e Fevereiro de 2011
Sistemas Operacionais
© 2004 by Pearson Education Computadores: Ferramentas para a Era da Informação Tema 0 PARTE A.
SISTEMAS OPERACIONAIS I
Fundamentos de Arquitetura da Computação
Projeto de Linguagens de Programação
Sistemas operacionais
Introdução à INFORMÁTICA
Igor Steinmacher, MSc. O maravilhoso mundo da Lógica de Programação.
Conceitos Básicos de Informática
Entrada e Saída (E/S).
Algoritmos e Estrutura de Dados I
Sistemas Operacionais Sistema Computacional Professora: Michelle Nery.
Algoritmos e Programação I
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos Aquiles Burlamaqui UERN
Introdução à Computação - Jorge Macêdo1 ICC – Software Jorge Macêdo.
Algoritmos e Programação MC102
Introdução à Computação Componentes Básicos dos Computadores
Etapas : Algoritmo é uma sequência lógica de instruções que podem ser executadas. É importante destacar que qualquer tarefa que siga um certo padrão.
Linguagem Técnica de Programação
Algoritmos e Programação I
SISTEMAS DE INFORMAÇÃO
SISTEMAS DE INFORMAÇÃO
Sistemas Operacionais
Introdução à Computação
Sistemas Operacionais IV – Gerenciamento de E/S
LÓGICA DE PROGRAMAÇÃO Curso: Técnico em Informática Professor: Ronaldo Disciplina: Lógica de Programação.
Introdução a Programação Aula 02 Jackson Eduardo
COMPILADORES 02 Prof. Marcos. COMPILADORES Do Programa à Execução Computadores das mais variadas arquiteturas têm funcionamento:
Transcrição da apresentação:

Introdução à Informática Conceitos Nomenclaturas

Conceito Computador Segundo Farrer Ferramenta capaz de tomar certas informações, processá-las e obter resultado Tipos analógicos de computador: termômetro, régua, barômetro

Computadores Digitais Capazes de fazer aritmética sobre dígitos Trabalham com informações lógicas e não com grandezas físicas

Sistemas Operacionais Definição: Conjunto de programas usado para prover acesso e abstração sobre o hardware Usuário deve ser capaz de fazer tarefas independente do hardware É função do SO gerenciar, esconder e proteger o hardware O SO deve prover funcionalidades para outras aplicações

Noções de S.O.

Exemplos Window – Linux Inicialmente criado com interface gráfica do ms-dos O sistema mais conhecido do mundo Principais Versões: 98, 2000, xp e 7 Fiascos – 97, Milenium, vista Linux Baseado no sistema unix Diversas distribuições gratuitas e pagas Principais Distribuições: Ubuntu, Debian, Fedora, RedHat Usado para computação de alto desempenho

Outros Exemplos Solaris - Desenvolvido para aplicações de grande porte com recursos múltiplos ISA – SO usado nos Celulares Nokia Mac-OS – Desenvolvido para arquiteturas MAC (hoje em desuso). Voltado para programação e tratamento de imagens

Divisão

Divisão Kernel – programas ligados principalmente ao hardware Shell – Programas ligados aos serviços de baixo nível e suporte para outras aplicações Aplicação – Programas de alto nível – browser, editores de texto, etc

Função de gerenciamento Gerenciamento de Processador(es) Gerenciamento de memória(as)

Gerenciamento de Processadores Programas são divididos em tarefas (instruções) Processadores possuem um limite máximo de instruções que podem ser executadas por unidade de tempo

Analogia

Analogia

Analogia

Gerenciamento de Memória 2 tipos básicos – primária e secundária Primária – conhecida como RAM Secundária – HD, DVD, Pendrives,etc

Gerenciamento de Memória Memória é controlada pelo sistema operacional Todos os aplicativos utilizam a memória principal Alguns usam memória secundária voluntária ou involuntariamente (memória virtual)

Gerenciamento de Memória O sistema operacional consome memória Ao perceber que a memória principal não é suficiente para acomodar todos os programas em execução o sistema operacional começa a utilizar memória virtual Parte dos blocos de memória armazenados na MP é transferido para o disco

Gerenciamento de Memória Escolha dos blocos a serem transferidos é probabilística Este comportamento pode afetar programas que fazem uso de grande quantidade de memória

Arquitetura de Von Neumann Memória Unidade Central de Processamento Unidade de entrada Unidade de saída

Funções Entrada – captar informações para o processo de computação Saída – exibir o resultado da computação de maneira inteligível UCP (CPU) – realizar as operações necessárias à computação Memória – Armazenar dados intermediários para a computação

FAQ É possível ter mais de um dispositivo de entrada/saída ao mesmo tempo? Mecanismos de entrada podem ser usados como mecanismos de saída?

Como realizar computação Computação é tipicamente feita através de programas de computador Capazes de analisar as informações Fazer transformações necessárias Realizar a computação Imprimir os resultados

Programas Mas o que é um programa? Para entender o conceito de programa é necessário entender o conceito de algoritmo

Algoritmo - Definição Descrição de um conjunto de comandos que, obedecidos, resultam em um conjunto finito de ações

Etimologia A palavra algoritmo tem origem no sobrenome, Al-Khwarizmi, de um matemático persa do século IX Do Árabe Al-goreten - raiz Do grego arithmós – número

Definição Apesar de ser um conceito muito antigo (há relatos de algoritmos na Grécia antiga), o conceito só foi formalizado na história contemporânea 1936 – Alan Turing

Funcionamento Entrada Algoritmo Saída

Exemplo Fazer uma Mousse de Maracujá Entrada: 1 lata de leite condensado 1 lata de creme de leite sem soro 1 lata (a mesma medida) de suco de maracujá concentrado 1 envelope de gelatina em pó sem sabor

Exemplo Algoritmo: Bata no liquidificador o leite condensado, o creme de leite sem soro e o suco de maracujá A parte prepare a gelatina em pó, conforme instruções do envelope Quando amornar, coloque para bater juntamente com os demais ingredientes que estão no liquidificador Unte uma forma de pudim com margarina e antes de colocar o creme passe água pela forma, como se fosse enxaguá-la Coloque no congelador até estar no ponto para tirar da forma

Exemplo Saída:

Exemplo A receita pode ser chamada de algoritmo ambíguo Quando amornar, coloque para bater juntamente com os demais ingredientes que estão no liquidificador Coloque no congelador até estar no ponto para tirar da forma O Português é uma linguagem ambígua

Exemplo 2 Pedir cerveja por telefone Entrada: Lista com os fornecedores de cerveja que entregam no endereço desejado

Exemplo 2 Algoritmo: Ligue para o primeiro número na lista que não esteja marcado Pergunte e anote o preço da caixa de cerveja Marque o fornecedor para o qual você acabou de ligar Repita os três passos anteriores até que todos os fornecedores estejam marcados Localize o fornecedor que possua o menor preço, ligue novamente e peça a caixa de cerveja

Exemplo 2 Saída:

Representações para algoritmos Textual Fluxograma Pseudocódigo

Representação Textual O algoritmo para pedir uma caixa de cerveja por telefone possui como entrada uma lista de todos os fornecedores que entregam caixas de cerveja no endereço desejado e procede da seguinte maneira: Primeiramente, deve-se ligar para cada um dos fornecedores presentes na lista e registrar os respectivos preços. Em seguida, após se ter todos os preços, deve-se ligar para o fornecedor que possui o menor preço e fazer a encomenda

Representação por Fluxograma Entrada Processo Decisão Terminação

Representação por Fluxograma Lista Ligar Perguntar e registrar o preço Marcar fornecedor Todos os Fornecedores Marcados? Não Sim Encomendar Fim

Representação por Pseudocódigo Procedimento encomendarCerveja(lista de fornecedores) Para cada fornecedor “f” na lista faça ligar(f) perguntarAnotarPreço(f) Fim Para melhorFornecedor = localizarMenorPreço(lista) ligar(melhorFornecedor) encomendar(melhorFornecedor) Fim Procedimento

Programa de computador Segundo Wirth Formulações concretas de algoritmos abstratos, baseados em representações e estruturas específicas de dados Um algoritmo escrito da forma que um computador possa executar

O que um computador entende? 01011101001000100100100010010001 Linguagem de máquina não são inteligíveis Necessidade de uma linguagem de mais alto nível

O que um computador entende? Expressar idéias de maneira mais natural Não ambígua Logo a linguagem textual não é adequada

O que um computador entende Fluxogramas não são facilmente processáveis por computadores E os pseudocódigos? São mais naturais para os programadores Não possuem ambiguidades Facilmente processáveis por computadores

Pseudocódigos x linguagem de programação Pseudocódigo são representação de algoritmos Podem ser convertidos para linguagens de programação

Compilação Transformação de um programa fonte (escrito em linguagem de programação) para um programa objeto (código binário) Código fonte compilador Código objeto

Linguagem de Programação Uma linguagem de programação é um método padronizado para expressar instruções para um computador É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador

Regras de sintaxe Verificação das regras gramaticais da linguagem Exemplo: verifica se uma operação de soma possui os 2 termos

Regras de semântica Verifica a corretude e das operações Exemplo: verifica se uma operação de soma possui os termos corretos (número + número, texto + texto)

Revisão Conceitos: computador, algoritmo, programa Estrutura de um computador digital Exemplos de algoritmos Representação de algoritmos Modo mais adequado de dar instruções ao computador Compilação

Exercícios Tipos de memória Trabalho em grupo, monografia escrita sobre tipos de memória (elétrica, magnética, ótica, etc.) Data de entrega: duas semanas

Exercícios Monografia escrita ou digital Tema: Arquitetura de Von Neumann Conceitos e funcionamento Grupos de 5 pessoas Data de entrega: Três semanas - 3 de setembro