introdução à informática conceitos nomenclaturas
TRANSCRIPT
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 – 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
Unidade
de saída
Unidade
de entrada
Memória
Unidade Central de
Processamento
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áriasRealizar 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í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
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 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
Representação por Fluxograma
Entrada
Processo
Decisão
Terminação
Representação por FluxogramaLista
Perguntar e registrar o preço
Todos os Fornecedores
Marcados?
Fim
Ligar
Marcar fornecedor
SimNãoEncomendar
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
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 programadoresNão possuem ambiguidadesFacilmente 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ódigofonte
compiladorCódigoobjeto
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