Introdução à Informática Conceitos Nomenclaturas.

51
Introdução à Informática Conceitos Nomenclaturas

Transcript of Introdução à Informática Conceitos Nomenclaturas.

Page 1: Introdução à Informática Conceitos Nomenclaturas.

Introdução à Informática

Conceitos

Nomenclaturas

Page 2: 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

Page 3: Introdução à Informática Conceitos Nomenclaturas.

Computadores Digitais

Capazes de fazer aritmética sobre dígitos

Trabalham com informações lógicas e não com grandezas físicas

Page 4: Introdução à Informática Conceitos Nomenclaturas.

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

Page 5: Introdução à Informática Conceitos Nomenclaturas.

Noções de S.O.

Page 6: Introdução à Informática Conceitos Nomenclaturas.

Exemplos

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

Page 7: Introdução à Informática Conceitos Nomenclaturas.

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

Page 8: Introdução à Informática Conceitos Nomenclaturas.

Divisão

Page 9: Introdução à Informática Conceitos Nomenclaturas.

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

Page 10: Introdução à Informática Conceitos Nomenclaturas.

Função de gerenciamento

Gerenciamento de Processador(es)

Gerenciamento de memória(as)

Page 11: Introdução à Informática Conceitos Nomenclaturas.

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

Page 12: Introdução à Informática Conceitos Nomenclaturas.

Analogia

Page 13: Introdução à Informática Conceitos Nomenclaturas.

Analogia

Page 14: Introdução à Informática Conceitos Nomenclaturas.

Analogia

Page 15: Introdução à Informática Conceitos Nomenclaturas.

Gerenciamento de Memória

2 tipos básicos – primária e secundária

Primária – conhecida como RAM

Secundária – HD, DVD, Pendrives,etc

Page 16: Introdução à Informática Conceitos Nomenclaturas.

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)

Page 17: Introdução à Informática Conceitos Nomenclaturas.

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

Page 18: Introdução à Informática Conceitos Nomenclaturas.

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

Page 19: Introdução à Informática Conceitos Nomenclaturas.

Arquitetura de Von Neumann

Unidade

de saída

Unidade

de entrada

Memória

Unidade Central de

Processamento

Page 20: Introdução à Informática Conceitos Nomenclaturas.

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

Page 21: Introdução à Informática Conceitos Nomenclaturas.

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?

Page 22: Introdução à Informática Conceitos Nomenclaturas.

Como realizar computação

Computação é tipicamente feita através de programas de computador

Capazes de analisar as informações Fazer transformações necessáriasRealizar a computação Imprimir os resultados

Page 23: Introdução à Informática Conceitos Nomenclaturas.

Programas

Mas o que é um programa?

Para entender o conceito de programa é necessário entender o conceito de algoritmo

Page 24: Introdução à Informática Conceitos Nomenclaturas.

Algoritmo - Definição

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

Page 25: Introdução à Informática Conceitos Nomenclaturas.

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

Page 26: Introdução à Informática Conceitos Nomenclaturas.

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

Page 27: Introdução à Informática Conceitos Nomenclaturas.

Funcionamento

Entrada

Algoritmo

Saída

Page 28: Introdução à Informática Conceitos Nomenclaturas.

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

Page 29: Introdução à Informática Conceitos Nomenclaturas.

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

Page 30: Introdução à Informática Conceitos Nomenclaturas.

Exemplo

Saída:

Page 31: Introdução à Informática Conceitos Nomenclaturas.

Exemplo

A receita pode ser chamada de algoritmo ambíguoQuando 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

Page 32: Introdução à Informática Conceitos Nomenclaturas.

Exemplo 2

Pedir cerveja por telefone

Entrada: Lista com os fornecedores de cerveja que

entregam no endereço desejado

Page 33: Introdução à Informática Conceitos Nomenclaturas.

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

Page 34: Introdução à Informática Conceitos Nomenclaturas.

Exemplo 2

Saída:

Page 35: Introdução à Informática Conceitos Nomenclaturas.

Representações para algoritmos

Textual

Fluxograma

Pseudocódigo

Page 36: Introdução à Informática Conceitos Nomenclaturas.

Representação TextualO 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

Page 37: Introdução à Informática Conceitos Nomenclaturas.

Representação por Fluxograma

Entrada

Processo

Decisão

Terminação

Page 38: Introdução à Informática Conceitos Nomenclaturas.

Representação por FluxogramaLista

Perguntar e registrar o preço

Todos os Fornecedores

Marcados?

Fim

Ligar

Marcar fornecedor

SimNãoEncomendar

Page 39: Introdução à Informática Conceitos Nomenclaturas.

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

Representação por Pseudocódigo

Page 40: Introdução à Informática Conceitos Nomenclaturas.

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

Page 41: Introdução à Informática Conceitos Nomenclaturas.

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

Page 42: Introdução à Informática Conceitos Nomenclaturas.

O que um computador entende?

Expressar idéias de maneira mais natural

Não ambígua

Logo a linguagem textual não é adequada

Page 43: Introdução à Informática Conceitos Nomenclaturas.

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 programadoresNão possuem ambiguidadesFacilmente processáveis por computadores

Page 44: Introdução à Informática Conceitos Nomenclaturas.

Pseudocódigos x linguagem de programação Pseudocódigo são representação de

algoritmos

Podem ser convertidos para linguagens de programação

Page 45: Introdução à Informática Conceitos Nomenclaturas.

Compilação

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

Códigofonte

compiladorCódigoobjeto

Page 46: Introdução à Informática Conceitos Nomenclaturas.

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

Page 47: Introdução à Informática Conceitos Nomenclaturas.

Regras de sintaxe

Verificação das regras gramaticais da linguagem

Exemplo: verifica se uma operação de soma possui os 2 termos

Page 48: Introdução à Informática Conceitos Nomenclaturas.

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)

Page 49: Introdução à Informática Conceitos Nomenclaturas.

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

Page 50: Introdução à Informática Conceitos Nomenclaturas.

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

Page 51: Introdução à Informática Conceitos Nomenclaturas.

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