Você está na página 1de 55

Introdução aos Computadores

Computadores e Redes de Comunicação


Mestrado em Gestão de Informação, FEUP 06/07

Sérgio Sobral Nunes


mail: sergio.nunes@fe.up.pt
web: www.fe.up.pt/~ssn
Sumário
• Definição
• Breve história
• Evolução
• Funções básicas
• Representação de dados
• Organização
• Programação

Sérgio Nunes Computadores e Redes de Comunicação 2


Definição
Breve História e Evolução
Definição
Computador “Sistema programável que permite
armazenar, recuperar e processar
dados.”

Instruções

Entrada Processamento Saída

Armazenamento

Sérgio Nunes Computadores e Redes de Comunicação 4


Breve História
• Computadores mecânicos
– Ábaco (2500 AC)
– Calculadora de discos Pascal (1642)
– Máquina diferencial (Babbage, 1822)
– Motor analítico (Babbage, 1833)
– Tabuladora Hollerith (1890)

Sérgio Nunes Computadores e Redes de Comunicação 5


Pascaline

Sérgio Nunes Computadores e Redes de Comunicação 6


Máquina Diferencial de Babbage

Sérgio Nunes Computadores e Redes de Comunicação 7


Tabuladora de Hollerith

Sérgio Nunes Computadores e Redes de Comunicação 8


Breve História
• 1ª Geração (1946-1957)
– Uso de válvulas e cartões perfurados. Cálculos
digitais substituíram os cálculos analógicos.

– Harvard MARK I (Aiken, 1944) – hardware


electromecânico.
– ENIAC (Eckert e Mauchly, 1946) – primeiro computador
completamente electrónico. 18 mil válvulas.
– EDVAC (von Neumann, 1950) – introduziu a memória
permanente e o sistema binário.
– UNIVAC I (1951) – primeiro computador a ser produzido em
massa.

Sérgio Nunes Computadores e Redes de Comunicação 9


ENIAC (1946)

Sérgio Nunes Computadores e Redes de Comunicação 10


UNIVAC (publicidade, 1955)

Sérgio Nunes Computadores e Redes de Comunicação 11


Breve História
• 2ª Geração (1958-1964)
– Substituição das válvulas pelo transístor.
– Linguagens de programação de alto nível.
– Introdução de sistemas operativos.
– Foram os primeiros computadores com sucesso
comercial.

– FORTRAN, COBOL – linguagens de programação.


– IBM 1401

Sérgio Nunes Computadores e Redes de Comunicação 12


IBM 1401

Sérgio Nunes Computadores e Redes de Comunicação 13


Circuito Impresso

Sérgio Nunes Computadores e Redes de Comunicação 14


Breve História
• 3ª Geração (1965-1971)
– Utilização do circuito integrado.
– Minicomputadores – versões reduzidas dos mainframes.
– Redes de computadores.
– Desenvolvimento das linguagens de programação
BASIC e PASCAL.

– IBM System/360

Sérgio Nunes Computadores e Redes de Comunicação 15


Circuito Integrado

Sérgio Nunes Computadores e Redes de Comunicação 16


IBM System/360

Sérgio Nunes Computadores e Redes de Comunicação 17


Breve História
• Gerações seguintes (1972-)
– Invenção do microprocessador.
– Computadores pessoais.
– Crescimento acentuado (Lei de Moore).

– Large Scale Integration (70s) – 3,000 a 100,000


elementos num chip.
– Very LSI (desde 80s) – 100,000 a 100,000,000.
– Ultra LSI (hoje) – mais de 100,000,000.

Sérgio Nunes Computadores e Redes de Comunicação 18


Wafer

Sérgio Nunes Computadores e Redes de Comunicação 19


Evolução dos Computadores
Ano Nome Área Potência Desempenho Memória Custo ajustado $/desempenho
(m2) (watts) (soma/seg) KB a 1991 vs. UNIVAC

1951 UNIVAC I 100 124.500 1.900 48 $4.533.607 1

1964 IBM S360 6 10.000 500.000 64 $3.756.502 263

1965 PDP-8 0,8 500 330.000 4 $59.947 10.855

1976 Cray-1 5,8 60.000 166.000.000 32.768 $7.675.591 21.842

1981 IBM-PC 0,15 150 240.000 256 $3.702 42.105

1991 HP 9000 0,2 500 50.000.000 16.384 $7.400 3.556.188

Hoje PC 0.2 <300 >100.000.000 262.144 <$1.000 >50.000.000

Sérgio Nunes Computadores e Redes de Comunicação 20


Tendências
• Evolução nas áreas:
– Processamento
– Armazenamento
– Comunicação

Sérgio Nunes Computadores e Redes de Comunicação 21


Sérgio Nunes Computadores e Redes de Comunicação 22
Organização Lógica
Representação de Dados
Funções Básicas

Entrada
e Saída

Controlo

Armazenamento Processamento

Sérgio Nunes Computadores e Redes de Comunicação 24


Funções Básicas
• Armazenamento de dados
– Capacidade de armazenar os dados de forma permanente ou
temporária.
• Operações de entrada e saída
– Permitem obter ou disponibilizar dados ao mundo exterior.
– Existe uma grande diversidade de dispositivos de entrada e
saída.
• Controlo das operações
– Selecção e ordenação das operações a executar de acordo com
regras pré-determinadas (programa).
• Processamento de dados
– Execução de operações básicas: aritméticas, lógicas,
comparações, pesquisas, etc.
– Centenas de milhões de operações por segundo

Sérgio Nunes Computadores e Redes de Comunicação 25


Representação de Dados
• Sistema binário
– Nos computadores digitais, a informação é
representada sob a forma de voltagens.
– Resulta em circuitos mais simples e mais imunes ao
ruído.
– O uso de um sistema decimal implicaria o recurso a
10 valores diferentes e fiáveis para cada dígito.
Voltagem
Representação do
valor 0110010

Tempo

Sérgio Nunes Computadores e Redes de Comunicação 26


Representação de Dados
• Num computador digital, toda a informação é codificada em binário.
– Símbolos na base 10: 0,1,2,3,...,9. (algarismos árabes)
– Símbolos na base 2: 0,1. (dígitos binários ou bits)

• Notação posicional: a mudança de um símbolo da direita para a


esquerda, representa um aumento na ordem de magnitude.
– base 10: aumentos em potências de 10. (1,10,100,1000...)
– base 2: aumentos em potências de 2. (1,2,4,8...)

• Representação de valores numéricos:


– 11012 base 2 1x23 + 1x22 + 0x21 + 1x20 = 13
– 24710 base 10 2x102 + 4x101 + 7x100 = 247

Sérgio Nunes Computadores e Redes de Comunicação 27


Representação de Dados
Decimal Binário Decimal Binário
1 1 11 1011
2 10 12 1100
3 11 13 1101
4 100 14 1110
5 101 15 1111
6 110 16 10000
7 111 17 10001
8 1000 18 10010
9 1001 19 10011
10 1010 20 10100

Sérgio Nunes Computadores e Redes de Comunicação 28


Representação de Dados
• Binário Æ Decimal
– 1012 = 1 x 22 + 0 x 21 + 1 x 20 = 4 + 0 + 1 = 510
– 10012 = 1 x 23 + 0 x 22 + 0 x 21 + 1 x 20 = 910
– 10,112 = 1 x 21 + 0 x 20 + 1 x 2-1 + 1 x 2-2 =
2 + 0 + ½ + ¼ = 2 + ¾ = 2,7510

• Decimal Æ Binário
– 27 / 2 = 13 + resto 1
– 13 / 2 =6 + resto 1
– 6/2 =3 + resto 0
– 3/2 =1 + resto 1
– 1/2 =0 + resto 1

– 2710 = 110112

Sérgio Nunes Computadores e Redes de Comunicação 29


Representação de Dados
• Como representar outros símbolos?
– Utilizando normas de codificação – as normas de codificação
permitem relacionar um conjunto de símbolos (alfabeto) com outro
conjunto, p.e. números ou impulsos eléctricos.

• Código ASCII:
Binário Decimal ASCII Binário Decimal ASCII
00101110 46 . 00101110 65 A
00101111 47 / 00101111 66 B
00110000 48 0 00110000 67 C
00110001 49 1 00110001 68 D

• Outras normas: Unicode, ISO 8859-1

Sérgio Nunes Computadores e Redes de Comunicação 30


Representação de Dados
• 1 bit (binary digit)
• 1 byte (binary term) = 8 bits

• Os prefixos apresentados correspondem, segundo as normas


internacionais, a potências na base 10 (kilo – 103, mega – 106, ..). No entanto, na
área da ciência dos computadores, são associados à base 2.

• 1 kilobyte (KB) = 210 bytes = 1 024 bytes


• 1 megabyte (MB) = 220 bytes = 1 024 kilobytes
• 1 gigabyte (GB) = 230 bytes = 1 024 megabytes
• 1 terabyte (TB) = 240 bytes = 1 024 gigabytes
• 1 petabyte (PB) = 250 bytes = 1 024 terabytes
• 1 exabyte (EB) = 260 bytes = 1 024 petabytes

• 1 Kb = 1 kilobit ≠ 1KB = 1 kilobyte

Sérgio Nunes Computadores e Redes de Comunicação 31


Representação de Dados
• 1 símbolo ~ 1 byte

• 1 livro ~ 1 MB (apenas texto)

• Biblioteca do Congresso dos EUA ~ 28 TB

• Informação armazenada anualmente em todo o mundo ~ 5 EB


– A maioria da nova informação produzida é armazenada em discos duros.
– Considerando a população mundial, cada pessoa produz em média 800 MB/ano.

• Chamadas telefónicas por ano (fixo e móvel) ~ 17 EB


– Cerca de 3,5 vezes mais do que aquela que é armazenada anualmente.

• World Wide Web (à superfície) ~ 170 TB


– À superfície, ignorando as bases de dados (“deep web”).

Projecto “How Much Information? 2003”.


website: http://www.sims.berkeley.edu/research/projects/how-much-info-2003/

Sérgio Nunes Computadores e Redes de Comunicação 32


Sérgio Nunes Computadores e Redes de Comunicação 33
Organização do Computador
Organização do Computador
Unidade Central
de Processamento
controlo

Unidade de
Controlo

Memória Entrada e Saída


Unidade
Lógica e
Aritmética

dados
barramentos

Sérgio Nunes Computadores e Redes de Comunicação 35


Organização do Computador
• Unidade Central de Processamento (CPU)
– Controla a operação do computador e desempenha as funções de
processamento dos dados. Muitas vezes referido apenas como o
processador.
• Memória
– Armazenamento dos programas, dados e resultados.
• Entrada e Saída (E/S)
– Transfere os dados entre o computador e o ambiente externo (teclado,
monitor, etc.).

• No CPU
– Unidade de Controlo (UC): Controla a operação do CPU.
– Unidade Lógica e Aritmética (ULA): Desempenha as funções
lógicas (p.e. comparações) e aritméticas (p.e. adição).

Sérgio Nunes Computadores e Redes de Comunicação 36


Processador
• Executa as instruções indicadas nos programas armazenados em
memória.

• Instruções
– Conjunto limitado de operações elementares.
– Adicionar, testar, comunicar com dispositivos de E/S, mover, ...
– As instruções disponíveis dependem da arquitectura do computador.

• Ciclo de execução (simplificado)


– Obter próxima instrução
– Descodificar instrução
– Executar instrução
– Escrever resultados Obter Descod. Exec. Gravar

Sérgio Nunes Computadores e Redes de Comunicação 37


Processador
• Exemplo de instruções
– LOAD A, R1 Mover os conteúdos da posição de memória A para
o registo R1.
– LOAD B, R2
– ADD R1, R2, R3 Adicionar o conteúdo do registo R1 com R2 e
colocar o resultado em R3.
– STORE R3, C Armazenar o valor de R3 na posição de memória C.

Sérgio Nunes Computadores e Redes de Comunicação 38


Processador

Sérgio Nunes Computadores e Redes de Comunicação 39


Processador
• Em qualquer computador escalar, apenas uma instrução é
executada de cada vez.
• Durante as fases de descodificação e execução, os canais de
comunicação (bus) estão livres.
• Uma forma de aproveitar esta inactividade é através da obtenção
antecipada (prefetch) das instruções seguintes.

obter 1 executar 1 obter 2 executar 2 obter 3 executar 3

ganho

obter 1 obter 2 obter 3 obter 4 obter 5 obter 6


executar 1 executar 2 executar 3 exec. 4

Sérgio Nunes Computadores e Redes de Comunicação 40


Processador
• Principais características
– Comprimento da palavra. A palavra corresponde ao número de
bits que são tratados como uma unidade durante o processamento
interno (ex: “O Sun UltraSPARC é um processador de 64 bits”).
– Velocidade do processador. Para coordenar o funcionamento
das partes do processador são usados sinais de relógio. A velocidade
do processador corresponde ao número de ciclos de relógio por
segundo (hertz) (ex: “PC a 2 GHz”).

Sérgio Nunes Computadores e Redes de Comunicação 41


Memória
• A memória pode ser vista como um conjunto de células
onde é possível armazenar dados.
• A cada célula está associado um número de
identificação único – endereço.

Sérgio Nunes Computadores e Redes de Comunicação 42


Memória
• Principais características
– Localização
• Processador, interna, externa (secundária).
– Capacidade
• Tamanho da palavra, número de palavras.
– Método de acesso
• Sequencial, directo, aleatório, associativo.
– Desempenho
• Tempo de acesso, frequência de relógio, taxa de transferência.
– Tipo físico
• Semicondutor, magnético, óptico.
– Características físicas
• Volátil, permanente.

Sérgio Nunes Computadores e Redes de Comunicação 43


Memória
• Hierarquia de memórias do computador

10 registos

103 cache

Unidades de •Menor custo por bit


106 memória principal
capacidade
•Maior capacidade
6
10 cache de disco
•Maiores tempos de acesso
109 disco magnético

109 banda magnética disco óptico

Sérgio Nunes Computadores e Redes de Comunicação 44


Memória
• Evolução da capacidade dos chips de DRAM.
DRAM
Ano Capacidade
1980 64 Kb
1983 256 Kb
1986 1 Mb
1989 4 Mb
1992 16 Mb
1996 64 Mb
1999 256 Mb
2002 1 Gb

Sérgio Nunes Computadores e Redes de Comunicação 45


Memória
• Memória primária (interna)
– Usada para armazenar dados de utilização frequente. Geralmente
volátil.
• Memória secundária (externa)
– Dispositivos periféricos, acessíveis ao processador através dos
controladores de E/S.
ROM
PROM
Armazenamento ROM EPROM
Primário EEPROM
SRAM
RAM DRAM

Disco magnético

Armazenamento Disco óptico (CR-ROM, DVD)


Secundário
Banda magnética

Sérgio Nunes Computadores e Redes de Comunicação 46


Disco Magnético

Sérgio Nunes Computadores e Redes de Comunicação 47


Entrada e Saída
• Os controladores de entrada e saída (E/S) são a interface de um
computador para o exterior.
• O módulo de E/S tem duas funções principais:
– Interface com o processador e memória através dos canais de
comunicação do sistema.
– Interface com cada um dos periféricos instalados através de canais
específicos.
• Categorização de dispositivos externos (periféricos):
– Interface com Humanos: comunicação com o utilizador.
– Interface com Máquinas: comunicação com equipamento.
– Comunicação: comunicação com dispositivos remotos.

Sérgio Nunes Computadores e Redes de Comunicação 48


Periféricos
• Interface com Humanos
– Teclado, monitor, impressora.
• Interface com Máquinas
– Disco magnético, sensor, actuador.
• Comunicação
– Modem.

Sérgio Nunes Computadores e Redes de Comunicação 49


Monitor CRT
• Cathode Ray Tube (CRT)
• Dispositivo de saída mais usado.

• Resolução máxima: número máximo de


pontos individuais.
• Taxa de refrescamento: número de vezes
que a imagem no ecrã é desenhada.
• Profundidade de cor: número de cores que podem ser
desenhadas num ponto.

• A imagem corresponde a uma matriz de pixels,


representados num mapa de bits (bitmap).
Sérgio Nunes Computadores e Redes de Comunicação 50
Programação de Computadores
• Um programa especifica, na sintaxe precisa de uma
linguagem de programação, as tarefas que se pretende
que o computador realize.

• Um algoritmo tem o mesmo objectivo de um programa


mas não está associado a nenhuma linguagem em
particular. Tem como principal função facilitar a
comunicação entre humanos.

• Exemplo: receita de bolo de chocolate.

Sérgio Nunes Computadores e Redes de Comunicação 51


Programação
1.Numa taça:
1.Bater:
5 ovos
2. cháv. de chá de açúcar.
até obter uma mistura consistente.
2.Acrescentar alternadamente:
2 cháv. de chá de farinha.
1 col. chá de fermento em pó.
1 cháv. de chá de óleo.
1 cháv. de chá de chocolate em pó.
3.Bater até obter uma massa espessa.
4.Acrescentar 1 cháv. de chá de água.
2.Untar forma com manteiga e farinha.
3.Deitar massa na forma.
4.Levar forma ao forno durante 30-40 minutos a 250ºC.

Sérgio Nunes Computadores e Redes de Comunicação 52


Programação
swap(int v[], int k);
{
int temp;
Linguagem de alto nível (C) temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
}

compilador
swap:
multi $2, $5,4
add $2, $4,$2
lw $15, 0($2)
Linguagem de montagem lw $16, 4($2)
sw $16, 0($2)
sw $15, 4($2)
jr $31,

assembler
00000000101000010000000000011000
00000000100011100001100000100001
10001100011000100000000000000000
Código máquina 10001100111100100000000000000100
10101100111100100000000000000000
10101100011000100000000000000100
00000011111000000000000000001000

Sérgio Nunes Computadores e Redes de Comunicação 53


Linguagens de Programação

Sérgio Nunes Computadores e Redes de Comunicação 54


Programação

Sérgio Nunes Computadores e Redes de Comunicação 55

Você também pode gostar