Representações numéricas e bases de - (LTC) de NUTES

Propaganda
Métodos computacionais – 2007/1
Representações numéricas e bases de numeração
Objetivos
Os alunos deverão ser capazes de:
* Representar números na base 2 e 16 (binária e hexadecimal)
* Converter representações numéricas entre si
* Realizar operações aritméticas em base 2 e 16
Frederico C. Jandre
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
Números representam quantidades
-- São modelos da realidade
-- São artificiais
-- Não existem na natureza
-- São fruto da abstração humana
-- São uma ferramenta
-- Comunicação
-- Operações abstratas
-- Predição
Um carneirinho
Duas pedrinhas
Meia dúzia de bananas
-- No domínio formal da matemática, são
associados a propriedades e operações
-- Os mesmos números (conceitos)
podem, por suavez, ser representados
de várias formas
Frederico C. Jandre
Fonte:Wikimedia Commons
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
Representação arábica em base 10
-- É a nossa representação cotidiana: um
sistema posicional
Cada algarismo (ou dígito) está na casa
de uma potência de 10.
A quantidade de cada potência de 10 é
definida pelo número representado pelo
algarismo correspondente.
O número representado é computado
pela soma das unidades, das dezenas,
das centenas etc.
Frederico C. Jandre
Exemplo:
analise o número 2007:
2 grupos de 1000 unidades (2 x 103) mais
7 unidades, ou 2 x 103 + 7
Pergunta: por que a base usual é 10?
referências:
<http://pt.wikipedia.org/wiki/Algarismo>
<http://en.wikipedia.org/wiki/Al-Khwarizmi>
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
Adição em base 10
A adição, que é associativa (pode-se
fazer tomando-se as parcelas 2 a 2) é
feita na prática adicionando-se as
unidades, depois as dezenas, depois as
centenas etc. Em caso de superação da
potência de 10 seguinte, passa-se uma
unidade adiante e mantém-se o
algarismo remanescente.
Há um algoritmo para a adição de
números em base 10, aprendido nos
primeiros anos de educação formal.
Frederico C. Jandre
Exemplo:
Somar 6789, 4567 e 2007
Pergunta: para que se usa o 0?
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
Outros sistemas posicionais
O sistema em base unária é um sistema
posicional degenerado. A base é 1, logo
as potências da base em todas as
posições valem 1!
Sistemas não-posicionais
Um exemplo de sistema não-posicional:
numeração romana
-- Não representava o zero!
-- Algoritmos para as operações
costumavam ser muito complicados.
-- Abandonado em favor da
representação arábica
Frederico C. Jandre
Exemplos:
Represente em base unária:
a) 0
b) 1
c) 2
d) 10
Some os números representados.
Pergunta: o algoritmo de adição,
aprendido para a base 10, continua
valendo?
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
Sistemas posicionais em outras bases
Do mesmo modo que com a base 10, é
possível representar números em outras
bases. Duas delas são particularmente
interessantes para a programação: a
base 2 (representação binária) e a base
16 (hexadecimal).
Novamente, cada posição representa
uma potência da base (começando em
0). O número é computado pela soma
dos valores parciais.
Frederico C. Jandre
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
A representação binária
Exemplos:
Os números são representados em
binário por símbolos 0 ou 1, que
multiplicam as potências de 2
correspondentes à posição em que se
encontram.
Represente em base unária os seguintes
números representados em base binária:
Os algarismos (ou dígitos) binários são
também chamados de “bits” (do inglês
binary digit). Grupos de 8 bits
consecutivos são chamados de “bytes”
(do inglês binary term), e de 4 bits,
“nibble” (um jogo de palavras).
Frederico C. Jandre
a) 0
b) 1
c) 10
d) 1000
Perguntas: por que os números em base
2 são representados apenas com os
algarismos 0 e 1? É possível seguir o
mesmo algoritmo de adição usado em
base 10?
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
A base 16
Na base hexadecimal, analogamente à
base 10 e à base 2, as posições
correspondem a potências inteiras de 16.
Há 16 números representáveis com 1
algarismo em hexadecimal. Por isso,
além dos algarismos de 0 a 9, são
necessários mais 6 símbolos, para
representar os números de 10 a 15. Para
isso, são usadas as letras de A a F.
Frederico C. Jandre
Exemplos:
Represente em base decimal os
seguintes números hexadecimais:
a) 9
b) A
c) AA
d) FF
Perguntas: quantos bits são necessários
para representar um número de 1
algarismo hexadecimal? E 2 algarismos?
E N algarismos?
Programa de Engenharia Biomédica
COPPE/UFRJ
Métodos computacionais – 2007/1
Representações numéricas
Conversão entre a base 2 e a base 16
Um número de 4 bits pode assumir 16
valores. Esses valores podem ser
representados por apenas um algarismo
hexadecimal. Números de 8 bits, entre 0
e 255 decimal, são representados por 2
algarismos hexadecimais, entre 0 e FF.
Generalizando, números com B bits
podem ser representados por H
algarismos hexadecimais, onde é o
menor inteiro maior ou igual a B/4. Essa
propriedade simplifica a interconversão
de representações nas bases 2 e 16.
Frederico C. Jandre
Exemplos:
Represente em base hexadecimal os
seguintes números binários:
a) 1010
b) 1001010010101000110101011011110
Perguntas: como se demonstra
formalmente essa propriedade? Qual
seria um algoritmo para conversão de
decimal para binário?
Programa de Engenharia Biomédica
COPPE/UFRJ
Download