Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de...
Transcript of Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de...
![Page 1: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/1.jpg)
Sistemas Numéricos
Eduardo Figueiredo
25 de Março de 2010
GEM03: Algoritmos e Programação de Computadores Aula 04
![Page 2: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/2.jpg)
Monitoria
Tassyo Tchesco Vai estar em nossas aulas de
laboratório Vai estar disponível em horários extra-
classe para tirar dúvidas Tassyo ainda vai me passar estes
horários
![Page 3: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/3.jpg)
Exercício de Revisão
Será contado como presença para duas aulas do dia 19/03 Pode ser contado como 1 ponto extra no
Trabalho 1 (T1)
Entrega individual até dia 01/04 Na próxima aula ou antes em minha sala
![Page 4: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/4.jpg)
Agenda das Próximas Aulas
Data Conteúdo
11/03 * Introdução a Hardware
12/03 Introdução a Software
18/03 Não Haverá Aula
19/03 Não Haverá Aula
* Duas aulas = 1 aula do dia 11/03 + 1 aula do dia 04/03 (reposição)
![Page 5: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/5.jpg)
Agenda das Próximas Aulas
Data Conteúdo
25/03 * Sistemas Numéricos
26/03 Introdução a Programação
01/04 ** Revisão dos Exercícios
02/04 Feriado
* Duas aulas = 1 aula do dia 25/03 + 1 aula do dia 18/03 (reposição)** Duas aulas = 1 aula do dia 01/04 + 1 aula do dia 19/03 (reposição)
![Page 6: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/6.jpg)
Reposição da Aulas
Quinta (04/03) Reposição dia 11/04
Quinta (18/03) Reposição dia 18/04
Sexta (19/03) Reposição dia 01/04 (uma aula)
+ Lista de Exercício (duas aulas)
![Page 7: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/7.jpg)
Avaliação
Duas provas: 35 pts cada Prova 1 (P1): 30/Abril ou 07/Maio Prova 2 (P2): 02 ou 09/Julho
Dois trabalhos: 15 pts cada Trabalho 1 (T1): Abril Trabalho 2 (T2): Junho
![Page 8: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/8.jpg)
Avaliação
Duas provas: 35 pts cada Prova 1 (P1): 30/Abril ou 07/Maio Prova 2 (P2): 02 ou 09/Julho
Dois trabalhos: 15 pts cada Trabalho 1 (T1): Abril Trabalho 2 (T2): Junho
Exercícios serão contados como pontos extras
![Page 9: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/9.jpg)
Sistema de NumeraçãoConceitos Básicos
![Page 10: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/10.jpg)
Primeiros registros de cálculo
Acredita-se que os primeiros seres humanos a calcular eram pastores Empilha pedras para controlar a
quantidade de ovelhas de seu rebanho Calculus latim pedra
![Page 11: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/11.jpg)
O Sistemas de Numeração
Objetivos Prover símbolos e convenções para
representar quantidades Registrar processar informação
quantitativa
Tradicionalmente feita com números
![Page 12: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/12.jpg)
Método Tradicional
Chamado numeração posicional
Inventado pelos chineses
O valor representado pelo algarismo depende da posição em que ele aparece
![Page 13: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/13.jpg)
Sistema Decimal (base 10)
A posição à esquerda altera seu valor de uma potência de 10
Exemplo 125 1 representa 100 (102) 2 representa 20 (2x101) 5 representa 5 (5x100) 125 = 1x102 + 2x101 + 5x100
![Page 14: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/14.jpg)
Ligado e Desligado
Tudo que o computador entende é sinal de duas condições Sinais elétricos, polaridade magnética,
luz refletida ou não, etc.
Ou seja, computadores somente sabem se um interruptor está ligado ou desligado
![Page 15: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/15.jpg)
Representando Informação
O computador forma padrões complexos Ele possui inúmeros “interruptores”
(chamados transistores) Os transistores operam em velocidades
fenomenais
Estes padrões são significativos para humanos
![Page 16: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/16.jpg)
Dado X Informação
Dados são sinais brutos e sem significado individual
Os computadores manipulam dados para produzir informação
Analogia com texto escrito Os escritores transformam letras (dados)
em um texto com significado (informação)
![Page 17: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/17.jpg)
Tudo é número
Para o computador, qualquer coisa é número Números são números Letras são números Pontuação são números Símbolos são números
![Page 18: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/18.jpg)
Representação de Letras
Exemplo de letras Eis algumas palavras
A palavra “Eis” pode ser representada como “69 105 115”
“69 105 115” pode ser convertido para “0100 0101 0110 1001 0111 0011”
![Page 19: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/19.jpg)
Representação de Letras
“Eis” alfabético
“69 105 115” decimal
“0100 0101 0110 1001 0111 0011” binário
![Page 20: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/20.jpg)
Representação de Letras
“Eis” alfabético
“69 105 115” decimal
“0100 0101 0110 1001 0111 0011” binário
E i s ASCII
![Page 21: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/21.jpg)
Sistemas de Numeração
Sistemas numéricos são métodos diferentes de representar quantidade A quantidade não muda Os símbolos usados que mudam
Além do sistema decimal, outros sistemas são importantes na informática Sistema binário (base 2) Sistema octal (base 8) Sistema hexadecimal (base 16)
![Page 22: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/22.jpg)
O Sistema Decimal
Acredita-se que usamos o sistema decimal porque temos 10 dedos Primeira maneira que os seres humanos
encontraram para mostrar quantidade Crianças aprendem a contar usando os
dedos
![Page 23: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/23.jpg)
O Sistema Decimal
Digitus significa dedos (latim)
O sistema decimal possui dez símbolos 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9
E como reprezentar a quantidade dez? Neste caso, temos que usar dois símbolos
![Page 24: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/24.jpg)
Sistemas numéricos: diferenças
Válido para todo sistema numérico Acrescentar um novo dígito quando os
símbolos se esgotam Exemplo: 10 em decimal (dois dígitos)
Os sistemas numéricos possuem diferentes quantidades de símbolos disponíveis Hexadecimal: 16 símbolos Binário: 2 símbolos
![Page 25: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/25.jpg)
Por que binário?
Computadores usam o sistema binário É mais simples distinguir duas condições
opostas (como ligado e desligado) O CPU é composto de “pequenos relés”
(os transistores) Transistores podem ser tão pequenos que
uma CPU pode possuir milhões deles Cada transistor só pode guardar um dado
(0 ou 1)
![Page 26: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/26.jpg)
Armazenando Dados
O computador deve saber guardar os dados antes de efetuar uma operação
Exemplo Antes de somar 1 + 1, é preciso registrar
estes valores (e a soma dos valores) Para armazenar dados, computadores
usam o estado mais fundamental Ligado ou desligado (duas condições)
![Page 27: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/27.jpg)
Usando Relés
0
1
Um Relé (2 padrões) Dois Relés (4 padrões)
0
1
2
3
![Page 28: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/28.jpg)
Usando Relés
. . .
Três Relés (8 padrões)
0
1
2
7
Generalizando n relés = 2n padrões
Ao usar mais relés, podemos armazenar mais símbolos
![Page 29: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/29.jpg)
Quantidade de Algarismos
O maior número que pode ser representado na base 10 usando 3 algarismos é 999 103 - 1 = 999
O maior número que pode ser representado na base 2 usando 8 algarismos é 255 28 - 1 = 255
Generalizando, o maior número inteiro N que pode ser representado em uma dada base b com n algarismos é N = bn – 1
![Page 30: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/30.jpg)
Código Morse é Binário
Possui dois símbolos Ponto (.) e traço (-)
Ponto é um som curto Traço é um som longo Exemplo
“S” em código Morse é ... (ponto ponto ponto) “O” em código Morse é --- (traço traço traço) “SOS” é ... --- ...
![Page 31: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/31.jpg)
Base em Sistemas de Numeração
Define a quantidade de algarismos disponível na representação
A base 10 é usualmente empregada Mas, não é a única Outros exemplos: pedimos uma dúzia de ovos (12),
marcamos o tempo em minutos e segundos (60), etc.
Computadores utilizam a base 2 Sistema binário
![Page 32: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/32.jpg)
Exemplos de Bases
Algumas bases importantes na computação Base 2 0 e 1 Base 8 0 a 7 Base 10 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9 Base 16 0 a 9, A, B, C, D, E e F
Em geral, uma base b terá b algarismos Variando entre 0 e (b - 1)
A representação 125,38 (base 10) 1x102 + 2x101 + 5x100 + 3x10-1 + 8x10-2
![Page 33: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/33.jpg)
Identificando a Base
Em qual base está o número 9B3? Resposta óbvia, pois o algarismo B só existe na
base 16 (hexadecimal)
Em qual base está o número 11? Pode estar em qualquer base conhecida Portanto, a base deve ser especificada
Para diferenciar as bases, utiliza-se um número situado à direita inferior Exemplo: 112
![Page 34: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/34.jpg)
Representação de um Número
Representamos um número N (de n casas), numa dada base b, como segue Nb = an.bn + .... + a2.b2 + a1.b1 + a0.b0 + a-1.b-1 + a-
2.b-2 + .... + a-n.b-n
Parte inteira an.bn + .... + a2.b2 + a1.b1 + a0.b0
Parte fracionária a-1.b-1 + a-2.b-2 + .... + a-n.b-n
![Page 35: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/35.jpg)
Resumo de Regras
A base B indica à quantidade de algarismos distintos que podem ser utilizados
O algarismo mais a direita tem peso um O algarismo imediatamente a sua esquerda tem
peso B O seguinte B2, depois B3 ...
O valor de um número é determinado pela soma dos valores de cada algarismo multiplicado com seu peso
![Page 36: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/36.jpg)
Linguagens do ComputadorBytes e ASCII
![Page 37: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/37.jpg)
Linguagem do Computador
Os computadores utilizam o sistema binário Todas as informações armazenadas ou
processadas são representadas por 0 e 1
Dígito binário são chamados bit Do inglês, binary digit
Um bit pode assumir os valores 0 ou 1 Analogia à tensões elétricas / sinais
eletrônicos
![Page 38: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/38.jpg)
Conjunto de bits
Um bit pode representar apenas dois símbolos: 0 ou 1
Quantos bits são necessários para representar todos os símbolos? Todas as letras Símbolos de pontuação Algarismos numéricos, ...
![Page 39: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/39.jpg)
Símbolos
Caracteres alfabéticos maiúsculos 26
Caracteres alfabéticos minúsculos 26
Algarismos 10
Sinais de pontuação e outros símbolos 32
Caracteres de controle 24
TOTAL 118
![Page 40: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/40.jpg)
Bits necessários
Bits Símbolos
2 4
3 8
4 16
5 32
6 64
Bits Símbolos
7 128
8 256
9 512
10 1024
... ...
![Page 41: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/41.jpg)
Bits necessários
Bits Símbolos
2 4
3 8
4 16
5 32
6 64
Bits Símbolos
7 128
8 256
9 512
10 1024
... ...
Precisamos representar pelo menos 118 símbolos
![Page 42: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/42.jpg)
Bits necessários
Bits Símbolos
2 4
3 8
4 16
5 32
6 64
Bits Símbolos
7 128
8 256
9 512
10 1024
... ...
Escolhido 8 bits para permitir símbolos extras
![Page 43: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/43.jpg)
Sistema do Computador
Um Byte é um conjunto de oito bits
Dados são armazenados na base binária, não na decimal 0 = 00000000 1 = 00000001 2 = 00000010 255 = 11111111
Na base 2, o número "10" vale dois 102 = 210
![Page 44: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/44.jpg)
Representação Binária
![Page 45: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/45.jpg)
Representação ASCII
É de longe a representação de símbolos mais comum ASCII = American Standard Code for
Information Interchange Inicialmente um bit não era usado para
representar símbolos Chamado bit de paridade 7 bits representam 128 símbolos
![Page 46: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/46.jpg)
Representação ASCII
Atualmente, todos os 8 bits são usados 8 bits representam
256 símbolos
Símbolo Decimal Binário
... ... ...
A 065 0100 0001
B 066 0100 0010
... ... ...
a 097 0110 0001
b 098 0110 0010
... ... ...
![Page 47: Sistemas Numéricos Eduardo Figueiredo 25 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 04.](https://reader033.fdocuments.net/reader033/viewer/2022042714/552fc14a497959413d8e1da1/html5/thumbnails/47.jpg)
Referências
Peter Norton, Introdução à Informática, Pearson Makron Books, 1996. Páginas 102 a 112 no xerox (Bloco 1B)