Você está na página 1de 26

Matemática Computacional

1. Representação Numérica

Prof. Diego Izidoro


Introdução
• Como os povos antigos representavam os números?

✓ Desde a pré-história, tem-se registros de usos de símbolos e outros


artifícios para representar quantidades.

2
Introdução
• Porque o sistema decimal é o mais utilizado pela humanidade?

✓ Como os humanos aprenderam a contar com os dez dedos das mãos,


não é difícil concluir que esse é o motivo da base 10 ter se tornado
universal.

3
Introdução
• Os humanos já utilizaram outras base numéricas no passado?

✓ Registros históricos revelam que alguns povos antigos chegaram a


utilizar base 5, 12, 20 e até mesmo a base 60.

4
Introdução
• Além da base 10, quais outras bases numéricas utilizamos
atualmente?

✓ A criação dos computadores difundiu a base 2. Outras duas bases


também passaram a ser utilizadas: as bases 8 (octal) e 16
(hexadecimal).

5
Representação decimal e binária
• O sistema decimal (base 10) é um sistema posicional de numeração
que utiliza dez algarismos (0, 1, 2, 3, 4, 5, 6, 7, 8 e 9).

• Notação posicional: 2561,78

6
Representação decimal e binária
✓ O sistema binário (base 2) também é um sistema posicional de
numeração, mas que utiliza apenas dois algarismos (0 e 1).

✓ Em computadores, um número é por meio de dois níveis de tensão: um


alto (1) e um baixo (0). Os dígitos 0 e 1 são denominados bits, (binary
digit).

✓ Notação posicional: (1101,01)2

7
Conversão entre sistemas decimal e binário
• Como se converte um número da base 2 para a base 10?

✓ Escreva o número de base 2 na notação posicional;

✓ Efetue a soma dos múltiplos de 2. O resultado é o número na base 10.

✓ Exemplo: (1001,1)2

8
Conversão entre sistemas decimal e binário
• Como se converte um número da base 10 para a base 2?

Para realizar a conversão de um número inteiro:

✓ Efetue a divisão do número por 2 sucessivamente até que o quociente


seja 1. Anote o valor do resto em cada divisão.

✓ O quociente 1 da última divisão acrescido dos restos das divisões


anteriores formam o número em base 2.

9
Conversão entre sistemas decimal e binário
• Como se converte um número da base 10 para a base 2?

✓ Exemplo: 41

10
Conversão entre sistemas decimal e binário
• Como se converte um número da base 10 para a base 2?

Para realizar a conversão de um número fracionário:

✓ Multiplique o número por 2 e anote a parte inteira (0 ou 1).

✓ Multiplique somente a parte fracionária do resultado novamente por 2


e anote mais uma vez o valor da parte inteira (0 ou 1).

✓ Repita o passo anterior, até que o resultado obtido seja exatamente


igual a 1. Os valores das partes inteiras de cada multiplicação formam o
número fracionário em base 2.

11
Conversão entre sistemas decimal e binário
• Como se converte um número da base 10 para a base 2?

✓ Exemplo: 0,6875*

*Observação: 0,6875 = 11/16 = 11/24. Denominador múltiplo de 2, logo representação finita em base 2.
12
Conversão entre sistemas decimal e binário
• Como se converte um número da base 10 para a base 2?

✓ Exemplo: 0,4*

*Observação: 0,4 não tem representação finita em base 2, logo é representado por dízima periódica.

13
Exercícios
1.1. Converta os números a seguir do sistema decimal para o sistema
binário:

(a) 70

(b) 13,45

(c) 29,875

Respostas: (a) 1000110 (b) 1101,𝟎𝟏𝟏𝟏𝟎𝟎 (c) 11101,111

14
Exercícios
1.2. Converta os números a seguir do sistema binário para o sistema
decimal:

(a) 11001101

(b) 110010,101

(c) 1011,0011

Respostas: (a) 205 (b) 50,625 (c) 11,1875

15
Representação de números em computadores
• Como um número é representado em computadores?

✓ É representado em base 2 em notação de ponto flutuante com um


número determinados de dígitos (bits).

✓ Até o início da década de 1980, cada modelo de computador tinha seu


próprio sistema de representação em ponto flutuante.

✓ Em 1985, o Instituto de Engenheiros Eletricistas e Eletrônicos (IEEE)


publicou a norma IEEE 754 que padronizou os sistemas de
representação numérica computacionais.

16
Representação em ponto flutuante
• Como é a representação numérica em ponto* flutuante?

✓ Um número em ponto flutuante tem a seguinte forma:

𝑛 = ± (0, 𝑑1 𝑑2 𝑑3 … 𝑑𝑡 ) ∙ 𝛽 𝑒

✓ Onde:

• n é o número a ser representado;

• d são os dígitos fracionários;

• t é o número de dígitos fracionários;

• β é a base numérica utilizada;

• e é o expoente.

*Observação: utilizamos a nomenclatura “ponto flutuante”, mas no Brasil usamos a vírgula para separar a
parte inteira de um número de sua parte fracionária.
17
Representação em ponto flutuante
• Como é a representação numérica em ponto* flutuante?

✓ Não há parte inteira.

✓ Os dígitos da parte fracionária são denominados de mantissa.

✓ O primeiro dígito (d1) deve ser diferente de zero.

✓ O ponto (no nosso caso a vírgula) “flutua” dependendo da ordem de


grandeza do número.

✓ Exemplos:

✓ 681.412.000 = 0,681412 ∙ 109

✓ 0,00000002357 = 0,2357 ∙ 10-7

✓ 101101102 = 0,101101102 ∙ 28

✓ 0,000011012 = 0,11012 ∙ 2-4


18
Exercícios
1.3. Represente os números a seguir em ponto flutuante:

(a) 7.580.300.000

(b) 0,00000015789

(c) 0,98710010

(d) 1100100002

(e) 0,000011012

(f) 1,0102

Respostas: (a) 0,75803 ∙ 1010 (b) 0,15789 ∙ 10-6 (c) 0,9871001 ∙ 100 (d) 0,110012 ∙ 29 (e) 0,11012 ∙ 2-4 (f) 0,10102 ∙ 21

19
Representação em ponto flutuante
• Como é a representação numérica em ponto flutuante?

✓ Um sistema (S) de representação em ponto flutuante pode ser representado


por S(β, t, m, M), onde:

✓ β é a base numérica empregada;

✓ t é o número de dígitos da mantissa;

✓ m é o expoente mínimo do sistema;

✓ M é o expoente máximo do sistema.

20
Representação em ponto flutuante
• Como é a representação numérica em ponto flutuante?

✓ Considere um número representado em ponto flutuante de um computador


hipotético que utiliza 16 bits para armazenamento:

✓ O primeiro bit representa o sinal do número (0 positivo e 1 negativo).

✓ O segundo bit representa o sinal do expoente (0 positivo e 1 negativo).

✓ Os próximos quatro bits representam o valor absoluto (módulo) do expoente.

✓ Os dez bits restantes são utilizados para armazenar a mantissa.

• Que número decimal está representado? Que sistema de ponto flutuante é esse? Qual o
maior e o menor número decimal positivo que podem ser representados nesse sistema?
21
Representação em ponto flutuante
• Que número decimal está representado?

✓ O sinal do número é positivo.

✓ O sinal do expoente também é positivo.

✓ O módulo do expoente é 1012 = 5.

✓ Acrescentando a mantissa, temos 0,10112 ∙ 25 = 101102.

✓ No sistema decimal, esse número é igual a 22.

22
Representação em ponto flutuante
• Que sistema de ponto flutuante é esse?

✓ A base é 2, logo β = 2.

✓ São dez dígitos para a mantissa, logo t = 10.

✓ O maior expoente que pode ser representado é 11112 = 15.

✓ O maior expoente que pode ser representado é -11112 = -15.

✓ Logo, temos o sistema S(2,10,-15,15).

23
Representação em ponto flutuante
• Qual o maior e o menor número decimal positivo que podem ser
representados nesse sistema?

✓ Maior número: 0,11111111112 ∙ 215 = 32736. Acima disso: overflow.

✓ Menor número: 0,1 ∙ 2-15 = 0,000015258789062. Abaixo disso: underflow.

✓ Note que, se o expoente do número for 0 haverá uma duplicidade de


representação (+0 = –0).

24
Exercícios
1.4. Represente o número decimal –50,125 em ponto flutuante usando 16
bits no sistema S(2,10,-15,15).

Respostas: 1 0 0110 1100100010

25
Exercícios
1.5. Sobre o sistema em ponto flutuante S(2,2,-3,3), responda:

(a) Quantos números podem ser representados nesse sistema?

(b) Quantos bits são necessários para representar esse sistema num
computador?

(c) Liste os números positivos (em base 10) que podem ser representados
nesse sistema.

Respostas: (a)29 (b) 6 (c) 1/16; 3/32; 1/8; 3/16; 1/4; 3/8; 1/2; 3/4; 1; 1,5; 2; 3; 4; 6.

26