O documento discute sistemas de numeração e aritmética computacional, incluindo representação de números binários, divisão binária, adição e subtração com sinal, complemento de dois e representação de números reais em ponto flutuante.
3. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 3
Divisão de números binários
• Como nas demais operações aritméticas, a
divisão binária é efetuada de modo
semelhante à divisão decimal, considerando-
se apenas que:
– 0 / 1 = 0
– 1 / 1 = 1
• e que a divisão por zero acarreta erro.
• Podemos efetuar uma divisão binária pelo
método comum, isto é, dividendo / divisor =
quociente e resto.
• Ou podemos realizá-la através de sucessivas
subtrações, um processo mais simples de
implementação em circuitos digitais.
4. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 4
Divisão de números binários
• O outro método consiste na execução
da operação a seguir apresentada, o
qual é o detalhamento do processo
usado para executarmos essa operação
no lápis e papel, na base decimal.
5. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 5
Adição Utilizando Números Com Sinal
• O meio normal para representar números com sinal (+ ou
-) é adicionando-se um BIT ao número, chamado BIT de
sinal (BIT mais representativo).
• Convenção:
– 0: BIT DE SINAL que representa um número positivo;
– 1: BIT DE SINAL que representa um número negativo.
• Ex:
6. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 6
Aritmética Complementar
• Complemento Aritmético: É definido
como sendo o que falta a um número
para atingir o seu módulo.
• Módulo de um número de um dígito é a
quantidade de números diferentes que
podemos distinguir.
• Ex: Sistema Decimal => Módulo 10
– 2 => 8
– 4 => 6
• No sistema binário, composto por dois
símbolos, isto é, os BITS 0 e 1, um é
complemento do outro.
7. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 7
Complemento-de-2
• Obtenção do complemento-de-2 de um
número binário:
• - Troca-se cada 0 por 1 e vice-versa
(complemento-de-1);
• - Soma-se 1 ao resultado.
• Ex.:
• 1001
• 0110 (complemento-de-1)
• + 1
• 0111 (complemento-de-2)
9. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 9
Composição de números inteiros e
negativos
• A figura mostra a distribuição dos números positivos e
negativos (complemento de 2) de um número com 5 bits.
10. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 10
Composição de números inteiros e
negativos
• Portanto há 2n
-1 – 1 números positivos (1 a
15), há 2n
-1 números negativos (-1 a -16), e
um zero.
• Daí :
– Maior número positivo = 2n
-1 – 1
– Menor número negativo = -2n
-1
• Complemento de dois em 8 bits
– +127 = 01111111 = 27
-1
– -128 = 10000000 = -27
• Complemento de dois em 16 bits
– +32767 = 011111111 11111111 = 215
- 1
– -32768 = 100000000 00000000 = -215
11. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 11
Números reais
• Números reais são aqueles com parte
fracionária (por exemplo, 57,683).
• Estamos acostumados a representar esses
números no formato: parte inteira, vírgula
(ou ponto), parte fracionária.
• Esta representação, embora cômoda para
cálculos no papel, não é adequada para
processamento no computador.
12. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 12
Representação em Ponto
Flutuante
• Consideremos o número 57,683 usado acima
como exemplo.
• Este número pode ser também expresso como
57,683 x 100.
• E também poderia ser expresso com 57683 x 10-3
ou ainda 0,57683 x 102
.
• Na realidade, qualquer número - inteiro ou
fracionário - pode ser expresso neste formato:
número x baseexpoente
, em que variamos duas coisas:
a posição da vírgula (que delimita a parte
fracionária) e o expoente ao qual elevamos a
base.
• Essa representação é denominada
representação em ponto flutuante, pois o
ponto varia sua posição, modificando, em
conseqüência, o valor representado.
13. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 13
Representação Normalizada
• Na representação normalizada, o
número é preparado movendo a vírgula
para a direita ou para a esquerda de
forma que o número seja menor que 1,
o mais próximo possível de 1,
obviamente multiplicado por uma
potência da base de forma a manter o
valor do número.
• Em geral, isso significa que o primeiro
dígito significativo seguirá
imediatamente ao ponto (ou vírgula).
14. ArquiteturaeorganizaçãodeComputadores
Sistemas de Numeração e Aritmética Computacional 14
Representação Normalizada
• Por exemplo:
– 57,68310 --> normalizando ==> 0,57683 x 102
– 0,000462810 -> normalizando ==> 0,4628 x 10-3
– 0,000010112 --> normalizando ==> 0,1011 x 2-4
• De forma genérica, podemos representar a
forma normalizada:
± número x base ±expoente
• A parte do número representado dessa forma
normalizada (os algarismos significativos),
damos o nome de mantissa, e portanto
podemos representar:
± 0,M x B ±e
• onde M é a mantissa, B é a base e e é o
expoente.