Escolar Documentos
Profissional Documentos
Cultura Documentos
ARQUITETURA E ORGANIZAÇÃO
DE COMPUTADORES
ARITMÉTICA COMPUTACIONAL
Ex.2:
1 1 1111 1 “vai 1”
101101,01
+ 100111,11
1010101,00
Números em Ponto Fixo
1. Adição de Números Binários
Ex.3:
11 11 1 “vai 1”
11001,1101
+ 11100,1110
110110,1011
Números em Ponto Fixo
2. Adição de Números Octais e Hexadecimais
Ex.1:
11 “vai 1”
3463
+ 1524
5207
Números em Ponto Fixo
2.1. Adição de Números Octais
Ex.2:
1 1 1 “vai 1”
422,74
+ 513,74
1136,70
Números em Ponto Fixo
2.1. Adição de Números Octais
Ex.3:
111 1 “ vai 1”
27,416
+ 55,635
105,253
Números em Ponto Fixo
2.2. Adição de Números Hexadecimais
Ex.1:
11 1 “vai 1”
3A54,3B
+ 1BE8,7A
56 3C,B5 “soma”
Números em Ponto Fixo
2.2. Adição de Números Hexadecimais
Ex.2:
1 11 “vai 1”
3A943B
+ 23B7D5
5E4C10
Números em Ponto Fixo
2.2. Adição de Números Hexadecimais
Ex.3:
11 11 “vai 1”
2AC79
+ B7EEC
E2 B65
Números em Ponto Fixo
3. Subtração de Números Binários
Ex.1:
2
00 2 “empréstimo”
101101 “minuendo”
- 100111 “subtraendo”
000110
Números em Ponto Fixo
3. Subtração de Números Binários
Ex.2:
1
02 0 22
100110001
- 010101101
010000100
Números em Ponto Fixo
3. Subtração de Números Binários
Ex.1:
88
6 20 8 “empréstimos”
7312 “1ª parcela”
- 3465 “2ª parcela”
3625
Números em Ponto Fixo
4.1. Subtração de Números Octais
Ex.2:
3526,53
- 2764,36
0542,15
Números em Ponto Fixo
4.2. Subtração de Números Hexadecimais
Ex.1:
16
3B16 D16
4C7BE8
- 1E927A
2DE96E
Números em Ponto Fixo
4.2. Subtração de Números Hexadecimais
Ex.1:
110 “multiplicando”
x 101 “multiplicador”
110 “primeiro produto parcial”
+ 000 “segundo produto parcial”
110 “terceiro produto parcial”
11110 “resultado”
Números em Ponto Fixo
5. Multiplicação de Números Binários
Ex.2:
10101 “multiplicando”
x 1101 “multiplicador”
10101 “4 produtos parciais,
+ 00000 cada um deslocado
10101 1 casa para a
10101 esquerda”
100010001 “resultado”
Números em Ponto Fixo
5. Multiplicação de Números Binários
Ex.3:
10010
x 100
00000
+ 00000
10010
1001000
Números em Ponto Fixo
5. Multiplicação de Números Binários
Observação:
Em um sistema numérico posicional, o deslocamento de um número uma
posição para a esquerda ou para a direita é equivalente, respectivamente, à
multiplicação ou divisão desse número pela sua base.
Por exemplo:
103510 x 10 = 1035010 (deslocamento à esquerda)
103510 / 10 = 0103,510 (deslocamento à direita)
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.
Nesse caso, o desejado quociente será a quantidade de vezes que o divisor
poderá ser subtraído do dividendo, até que se obtenha um quociente igual a
zero.
Números em Ponto Fixo
6. Divisão de Números Binários
O outro método consiste na execução do Ex.1 apresentado a seguir, o qual é o
detalhamento do processo usado para executarmos essa operação no lápis e papel, na
base decimal.
a) a partir da esquerda, avançam-se tantos algarismos quantos sejam necessários para
obter-se um valor igual ou maior que o divisor;
b) encontrado esse valor, registra-se 1 para o quociente;
c) subtrai-se do valor obtido no dividendo o valor do divisor (na divisão binária, como
o quociente somente pode ser de valor igual a 1, a subtração é sempre com o próprio
valor do divisor);
d) ao resultado acrescentam-se mais algarismos do dividendo (se ainda houver algum),
até obter-se um valor igual ou maior que o divisor (como no item a). Se o(s)
algarismo(s) for(em) zero, acrescenta(m)-se zero(s) ao quociente;
e) repete-se o processo a partir do item b, até que se esgotem os algarismos do
dividendo.
Números em Ponto Fixo
6. Divisão de Números Binários
Ex.1:
1002 / 102 = 102
10’0 10 item a: 10 (dividendo) = 10 (divisor)
- 10 10 item b: quociente = 1
00 item c: 10 – 10 = 0
item d: dividendo = 00, quociente = 0
Números em Ponto Fixo
6. Divisão de Números Binários
Ex.2:
1010102 / 1102 = 1112
101010 110
- 110 111
1001
- 110
0110
- 110
000
Números em Ponto Fixo
6. Divisão de Números Binários
Ex.3:
1001012 / 1002 = 10012
100101 100
- 100 1001
0101
- 100
001
Números em Ponto Fixo
7. Representação de Números em Ponto Fixo
Esse método consiste na determinação de uma posição fixa
para a vírgula (ou ponto). Todos os valores representados em
ponto fixo para uma determinada operação possuem a mesma
quantidade de algarismos inteiros, bem como a mesma
quantidade de algarismos fracionários; isto é, a vírgula deve
ser alinhada em todas as parcelas de modo a garantir essa
igualdade de algarismos e do resultado e, para isso,
acrescenta-se zeros à esquerda da parte inteira e à direita da
parte fracionária quando necessário. Por exemplo:
1101,101 1110,001 0011,110
Números em Ponto Fixo
7. Representação de Números em Ponto Fixo
As posições mais adotadas para a vírgula são:
Na extremidade esquerda do número – nesse caso, o número é
totalmente fracionário;
Na extremidade direita do número – nesse caso, o número é
inteiro.
Em qualquer desses casos, no entanto, a vírgula fracionária não
estará fisicamente representada na memória; sua posição é
determinada na definição da variável, realizada pelo
programador (ou pelo compilador), e o sistema memoriza essa
posição, mas não a representa fisicamente.
Números em Ponto Fixo
7. Representação de Números em Ponto Fixo
Na representação de números em ponto fixo, os valores positivos são
representados pelo bit zero de sinal. Normalmente esse bit é
posicionado como o algarismo mais significativo do número, o mais
à esquerda, e pelos n-1 restantes bits, que correspondem ao valor
absoluto do número (magnitude).
Quanto aos números negativos, o sinal é representado pelo bit um e a
magnitude pode ser representada por um dos três seguintes modos:
Sinal e magnitude;
Complemento a 1;
Complemento a 2.
Números em Ponto Fixo
7.1. Sinal e Magnitude
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:
Magnitude
0 0111 = (+ 7)10
1 0111 = (- 7)10
Bit de sinal
Números em Ponto Fixo
7.1.1 Sinal e Magnitude – Operação de SOMA
A seguir serão descritos os passos de um possível algoritmo para
soma, utilizando-se números representados em sinal e magnitude:
1) Verificam-se os sinais dos números e efetua-se uma comparação
entre eles.
2) Se ambos os números têm o mesmo sinal, somam-se as
magnitudes; o sinal do resultado é o mesmo das parcelas.
3) Se os números têm sinais diferentes:
a) identifica-se a maior das magnitudes e registra-se o seu sinal;
b) subtrai-se a magnitude menor da maior (apenas as magnitudes);
c) sinal do resultado é igual ao sinal da maior magnitude.
Números em Ponto Fixo
7.1.1. Sinal e Magnitude – Operação de SOMA