Introdução a Ciência da Computação
Este material é uma adaptação das notas de aula dos professores Edino
Fernandes, Juliano Maia, Ricardo Martins e Luciana Guedes
Índice
Seção 1 – Definições e terminologias
Seção 2 – Histórico da Computação
Seção 3 – Arquitetura de computadores
Seção 4 – Representação da informação
Conceitos e definições
Dado: Pode ser qualquer coisa! Não tem sentido nenhum se estiver sozinho;
Informação: São dados processados. Um programa determina o que ele é (Processamento de dados);
Informática: computador gerando informações de forma automática.
INFORmação autoMÁTICA;
Hardware X Software
Hardware: É a parte mecânica e física da máquina, com seus componentes eletrônicos e peças.
Software: São conjuntos de procedimentos básicos que fazem que o computador seja útil executando funções. O conjunto de instruções ou “ordens” é também conhecido como programa.
Tipos de softwares
Software Básico: Controla componentes físicos e lógicos do computador, permitindo ao usuário interagir com esses componentes sem a necessidade de conhecimento especializado (baixo nível):
Sistemas operacionais (SO);
Utilitários: anti-vírus, compactadores, backups,...
Linguagens de programação;
Software Aplicativo: Desempenham funções específicas para determinadas atividades e usuários:
Planilhas eletrônicas, bancos de dados, navegadores.
Linguagem de programação
Linguagem: Conjunto de regras e símbolos, obedecendo regras e contendo um vocabulário com o objetivo de produzir comunicação;
Linguagem de programação: Linguagem destinada a permitir a comunicação entre o homem e o computador; Assembler;
C;
Java;
Delphi.
Noções Redes
Redes: Forma de interligar equipamentos (computadores e periféricos) para que seja possível a troca de dados e o compartilhamento de recursos.
Arquitetura cliente – servidor (client – server):
computador “central” que disponibiliza algum
serviço dito servidor; computadores que solicitam
informações ao servidor ou utilizam seu
processamento ditos clientes.
Aplicações Back-End: são aquelas que devem ser
rodadas no servidor.
Aplicações Front-End: são executadas no cliente.
Evolução do computador
Ábaco
calculador decimal operado
manualmente
foi inventado no oriente médio há
milhares de anos
Calculadora Mecânica
Blaise Pascal (1623-1662)
capaz de fazer somas e subtrações.
Evolução do computador
Tear Programável (1801)
Joseph Marie Jacquard
usava cartões perfurados
Calculador Analítico (1830)
Charles Babbage (1792-1871)
Ada Augusta Byron – Lady Lovelace
“moinho”
Muito a frente do seu tempo, não chegou a ser concluido
Usava cartões perfurados (dados e instruções)
Evolução do computador
Hollerith
Herman Hollerith (1860-1929)
Também usava cartões perfurados
Tabulação dados do censo
Z3
1941 - Konrad Zuse (Alemanha).
Primeiro computador digital, automático,
programável, de propósito geral,
completamente funcional (eletro-mecânico).
Evolução do computador
ABC Computer
1942 - John V. Atanasoff / Clifford Berry
(EUA)
Primeiro protótipo de calculador
eletrônico que funcionou nos EUA
Colossus
1943 -Alan Turing (Bletchley Park,
Inglaterra).
Primeiro computador eletrônico
programável; aplicação: criptografia; e
quebra de códigos
Evolução do computador
Harvard Mark 1
1944 -Howard Aiken (Universidade de
Harvard -EUA).
Primeiro computador eletromecânico
automático de grande porte.
ENIAC -Eletronic NumericalIntegrator and Calculator
1946 -John Mauchly e J. Presper Eckert(Ballistic Research Lab, University ofPennsylvania, EUA).
Primeiro computador eletrônico digital de grande porte.
Decimal
19000 válvulas –175 kW
5.000 operações por segundo
tempo médio entre falhas (MTBF) de 5,6 horas.
Evolução do computador
Transistor
1947 -Universidade de Stanford
(EUA).
primeiro dispositivo eletrônico de
estado sólido
Válvula eletrônica
Transistor moderno
Evolução do computador
A máquina de Von Neuman
conceito de programa armazenado
os programas seriam introduzidos
através de cartões perfurados, da
mesma forma como se fazia com os
dados.
revolucionou o conceito de
programação de computadores, e é
usado até hoje
Evolução do computador
Manchester Mark 1
1948 -F.C.Williams, Tom Kilburn e a Max
Neuman Royal Society Computing
Machine Laboratory (Universidade de
Manchester, Inglaterra).
Primeiro protótipo de computador
eletrônico de programa armazenado.
Executou o primeiro programa com
sucesso em 21/06/48).
EDSAC -Eletronic Delay StorageAutomatic Computer
1949 -Maurice Wilkes (Universidade de Cambridge, Inglaterra).
Primeiro computador eletrônico digital de programa armazenado de grande porte, totalmente funcional.
Executou o primeiro programa com sucesso em 06/05/49.
Evolução do computador
UNIVAC I
1949 -Mauchly and Eckert Computer
Corporation, depois UNIVAC, depois
Unisys.
Primeiro computador eletrônico
disponível comercialmente usava
programa armazenado e um
compilador.
Aplicação: Processamento das
eleições.
WHIRLWIND I
1950 -J.Forrester (Massachussets Institute
of Technology -MIT, EUA).
Primeiro computador para processamento
em tempo real
Evolução do computador
IBM 701
1953 -IBM Corporation
Primeiro computador eletrônico digital
IBM.
NCR 304
1957 -NCR Corporation.
Primeiro computador comercial 100%
construído com componentes de estado
sólido (transistores).
Evolução do computador
IBM 305
1957 -IBM Corporation.
Primeiro computador comercial a
utilizar unidades de disco com cabeças
móveis.
PDP -1
1959 -Digital Equipment Corporation.
Primeiro mini-computador
Evolução do computador
COBOL Common Business Oriented Language
1960 -Conference on Data System Languages CODASYL.
Primeira linguagem de programação de computadores para aplicação comercial padronizada.
Circuito Integrado - CI
1961 -Fairchild Corporation.
Primeiro circuito integrado disponível
comercialmente.
Evolução do computador
MITS 816
1972 -MITS (Micro Instrumentation and Telemetry Systems).
Primeiro microcomputador disponível
para uso pessoal.
Intel 4004
1971 -Intel Corporation
Primeiro microprocessador disponível
comercialmente
Evolução do computador
ALTO
1973 -Xerox PARC (Palo Alto Research
Center).
Primeiro microcomputador pessoal
completo, totalmente funcional, incluindo
Monitor.
Altair 8800
1975 -Edward Roberts, William Yates e
Jim Bybee.
Primeiro microcomputador pessoal
produzido industrialmente para venda em
massa.
Evolução do computador
Apple II
1976 -Steve Jobs e Steve Wozniak (Apple
Corp.).
Primeiro microcomputador pessoal a ter
sucesso comercial
IBM PC
1981 -IBM Corp (Boca Raton, FL, EUA).
Primeiro microcomputador pessoal IBM;
arquitetura aberta; um imenso sucesso
comercial.
Evolução do computador - Tipos Mainframe
Conhecidos dos anos setenta eram computadores de grandes empresas, realizando grandes tarefas e ocupando espaços formidáveis, como salas
Em rede
São computadores capazes de servir diversas máquinas ao mesmo tempo. Possibilitaram empresas difundirem a utilização do computador entre seus funcionários e setores.
Workstation
São muito utilizados por pessoas ou empresas que necessitam de um computador veloz e capaz de realizar muito trabalho ao mesmo tempo. Essa é sua principal característica
PCs
Responsável pelo sucesso da informática entre as pessoas e empresas atualmente. Cada vez mais barato e acessível, realiza as principais tarefas rotineiras e as mais avançadas.
Notebooks
São computadores portáteis, cabem em uma pasta e são importantes para o trabalho de campo de um serviço ou a movimentação dos seus dados, pois podemos levá-lo a qualquer
Palmtop
Como o próprio nome diz, cabem na palma da mão e realizam quase todas as tarefas de um PC.
Evolução do computador - Gerações
1° Geração Surgiu em 1945 com o UNIVAC I;
Componente eletrônico – válvulas;
Tempo de Operação: milisegundos(seg);
Tamanho: grande;
Pouco confiáveis;
Poucas horas de funcionamento;
Monoprogramáveis;
Programados em linguagem de máquina.
2° Geração Surgiu em 1958;
Computador mais popular foi o IBM 1401;
Componente eletrônico - transistor (SSI e MSI);
100 vezes menor;
Não precisava aquecer para funcionar;
Consumo menor de energia;
tempo de operação; microsegundos(10-6 seg);
Auxílio no controle de E/S (surgimento dos discos magnéticos);
Monoprogramável;
Linguagem assembler;
Surgimento do primeiro minicomputador: PDP-5 ($ 120.000).
A geração é o resultado da tecnologia aplicada na área de eletrônica.
Evolução do computador - Gerações
3° Geração
Surgiu em 1965: IBM 360;
Componente eletrônico : Circuito
Integrado (LSI);
Mais confiáveis;
Miniaturização dos componentes;
Baixíssimo consumo de energia;
Custo muito mais baixo;
Menor tamanho;
Multiprogramação;
IBM 360 - vendeu 30.000 unidades.
4° Geração
Surgiu em 1975;
Componentes eletrônicos -Circuitos Integrados (LSI e VLSI);
Tempo de operação - 0,5 nanosegundos (10-9 seg);
Popularização no uso;
Tecnologia de FIRMAWARE (Funções do S.O).
5ª Geração
Em fase de estudo
Dúvidas quanto à existência
Componentes eletrônicos: Circuito integrado (ULSI)
Inteligência artificial
O hardware e construído visando o software
CISC X RISC
Muliprocessamento
Tempo de operação : pico-segundo (10-12)
Memória principal - Gigabytes
Memória auxiliar – Terabytes
Evolução do computador - Gerações
Arquitetura de ComputadoresSeção 3
Arquitetura do conjunto de instruções + Organização da máquina Características de performance e capacidade das principais unidades
funcionais.
Registradores, Unidade lógica e aritmética, Unidade de controle ...
Como estas unidades funcionais são conectadas.
A natureza das informações trocadas entre componentes.
A lógica e os meios pelos quais é controlado este fluxo de informações.
Coordenação de Níveis de Abstração: interface entre hardware e software de baixo nível
padronização das instruções, linguagem de máquina, etc...
Vantagens: diferentes implementações da mesma arquitetura
desvantagem: algumas vezes impossibilita o uso de inovações
Arquitetura de Computadores
Modernas arquiteturas de conjunto de instruções:
Intel (80x86/Pentium/K6/MMX)
PowerPC
DEC Alpha
SGI MIPS ( mainframe )
SUN SPARC
HP PA-RISC
Arquitetura de Computadores
Interpretação (microprograma)
Nível de linguagem orientada para problemasNível 5
Nível de linguagem de montagemNível 4
Nível de sistema operacionalNível 3
Tradução(montador)
Tradução(compilador)
Nível convencional de máquinaNível 2
Interpretação parcial (sistema operacional)
Nível de microprogramaçãoNível 1
Microprogramas são executados diret. pelo HW
Nível de lógica digitalNível 0
Arquitetura de Computadores
Processador
Memória• PRINCIPAL
• AUXILIAR
Dispositivos de
ENTRADADispositivos de
SAÍDA
Principais unidades funcionais do computador
Processador
Principal unidade do computador (o cérebro);
Executa e gerencia todas as operações do computadorcom o auxílio dos demais dispositivos (memória, periféricos,…);
Principal unidade a determinar o poder computacional da máquina;
É composto por milhões de transistores.
Administrar na memória central (principal/ RAM): programa submetido, os dados transferidos de um elemento ao outro da
máquina para processamento
Processador
Unidade de controle (UC): Faz com que as instruções sejam processadas:
Gerenciamento da memória principal;
Requisições as unidades/dispositivos que devem colaborar no processo;
Unidade Lógica Aritmética (ULA):
Realiza as operações matemáticas (soma, subtração, divisão e multiplicação).
Realiza testes lógicos baseados nas instruções de programa (Álgebra Booleana).
Memórias
Armazenamento de programas e dados;
Local onde o processador:
Busca dados a serem processados;
Guarda valores intermediários;
Envia resultados finais do processamento;
Tipos de Memória: Principal: RAM, ROM;
Cache;
Secundárias:
Disco Rígico (HD), discos flexíveis, CD, etc...
Memória Principal - RAM
RAM (Random Access Memory)
Acesso aleatório: capacidade de acesso aqualquer posição em qualquer momento;
Armazena instruções que estão sendoexecutadas e os dados necessários a suaexecução;
Memória de leitura e escrita e de rápidoacesso;
É volátil (na falta de energia elétrica oudesligamento do computador as informaçõessão perdidas).;
Memória Principal - ROM
ROM (Read Only Memory) Memória de leitura– gravada pelo fabricante;
Pouca capacidade de armazenamento;
Não-volátil;
BIOS (Basic Input Output System) Armazenam informações para iniciar o computador: verificar a
memória RAM, iniciar dispositivos e dar início ao processo deboot;
CMOS (Complementary Metal-Oxide Semicondutor) Armazena as informações do sistema (setup);
Memória Cache
É um tipo de memória RAM;
Memória de acesso rápido, porém mais cara;
Armazena as instruções e os dados mais requisitados pelo processador;
Serve para acelerar o processamento;
Pode ser: Cache primária: interna ao
processador;
Cache secundária: externa ao processador.
Memória Secundária
Utilizada para armazenar maior volume de dados;
Armazenamento definitivo de programas e dados;
Baixo custo, se comparada aos demais tipos de memória;
Velocidade de acesso inferior aos demais tipos de memória;
Exemplos de Memória Secundária: Disco Rígido (HD – Hard Disc);
Disco flexível – disquetes;
Zip-Drive;
CDs;
Pendrives;
Memórias (Desempenho X Dimensão)
Cache interna
OutrosHD
RAM
Cache externa
Registrador
Acesso
mais rápido
Maior Dimensão
Barramento Comunicação entre UPC e MP
Conjunto de condutores elétricos que interligam os diversos componentes do computador e de circuitos eletrônicos que controlam o fluxo dos bits.
Dispositivos de entrada/saída
Permite a interação entre o usuário e o
computador;
Dispositivo de Entrada:
Encaminha as solicitações/dados do usuário ao
computador;
Dispositivo de Saída:
Exibe os resultados finais do processamento.
Dispositivos de entrada
Convertem dados para um formato manipulável pelo computador;
Exemplos de dispositivos de entrada: teclado e mouse;
joystick;
scanner;
microfone;
leitor de código de barras;
superfícies sensíveis ao toque (touch-screen);
sistemas de reconhecimento de voz, etc...
Dispositivos de saída
Convertem dados para um formato legível
pelo usuário (letras, números, cores, etc...);
Exemplos de dispositivos de saída:
Monitores de vídeo;
Impressoras;
Equipamentos de som, sintetizadores de voz,
etc...
Portas
Conectam periféricos às suas respectivasplacas controladoras; Portas Paralelas:
impressoras, scanners etc...;
Portas Seriais:
Fax, Modens externos...;
Portas USB : Atualmente, comum para conectardiversos periféricos ao computador.
BITs e BYTES
BIT: contração de BInary digiT
Representa um dos valores possíveis em binário, 0 ou 1 0 -> nível baixo, tensão elétrica baixa, falso...
1 -> nível alto, tensão elétrica alta, verdadeiro...
Quando o sistema binário começou a ser utilizado, percebeu-se que eram necessários 250 códigos diferentes para representar, com valores diferentes, todos os números, letras maiúsculas, minúsculas e acentuadas e os demais símbolos:
28 = 256;
BITs e BYTES
BYTE: é um grupo de 8 bits
Em um byte a 28 = 256 combinações possíveis:
Pode-se representar de 00000000 até 11111111
Medidas em Bytes
Unidade de Medida
Bytes / 1 caractere
Espaço
1 byte 1 8 bits
1 kilobyte (KB) 1.024 1024 bytes
1 megabyte (MB) 1.048.576 1024 Kb
1 gigabyte (GB) 1.073.741.824 1024 Mb
1 terabyte (TB) 1,099511628 E12 1024 Gb
Álgebra de Boole
Introduzida em 1854 por George Boole, e até hoje usada para o tratamento sistemático da lógica;
Conjunto de operadores e axiomas que são assumidos verdadeiros sem necessidade de prova: Axiomas:
Maria tem 25 anos ; Maria não tem 25 anos
Principais operações (operações básicas): Adição lógica (OU), multiplicação lógica (E) e Inversão (NÃO).
Álgebra de Boole
Adição lógica (operação OU):
“A operação OU resulta 1 se pelo menos uma
das variáveis de entrada vale 1”
A B A + B
0 0 0
0 1 1
1 0 1
1 1 1
Álgebra de Boole
Multiplicação lógica (operação E):
“A operação E resulta 0 se pelo menos uma das
variáveis de entrada vale 0”
A B A . B
0 0 0
0 1 0
1 0 0
1 1 1
Top Related