Escolar Documentos
Profissional Documentos
Cultura Documentos
12 Aritmética
• Adição e subtração binária
• Representação de números com sinal
• Sinal-magnitude
• Complemento de 2
• Adição e subtração no complemento de 2
• Multiplicação e divisão de binários
• Adição BCD
• Aritmética Hexadecimal
• Ponto Flutuante
Adição e subtração binárias
2
0+0 = 0
1+0 = 1
1+1 = 10 (0 mais um carry para a próxima posição)
1 + 1 + 1= 11 (1 mais um carry para a próxima posição)
Adição e subtração binárias
3
0-0 = 0
1-1 = 0
1-0 = 1
0–1 = ? (precisa tomar emprestado “borrow” do bit à esquerda)
10 – 1 = 1
Adição e subtração binárias
5
Sistema sinal-magnitude:
Como só é possível mostrar a magnitude com um número binário, o sinal (+) ou (-) é mostrado pela soma de um “bit de
sinal” extra. Um 0 no bit de sinal indica um número positivo. Um 1 no bit de sinal indica um número negativo.
Representação de números com sinal
7
O sistema de complemento de 2:
é a forma mais comum usada para representar números binários com sinal.
Para se determinar o complemento de 2 para um número binário, este deve ser inicialmente transformado para o
complemento de 1:
Substitui-se cada bit do binário por seu complemento (oposto).
Somando-se 1 na posição do bit menos significativo do complemento de 1 este será convertido para seu complemento
de 2.
8
Negação:
é a operação de conversão de um número positivo em seu equivalente negativo ou de
um número negativo em seu equivalente positivo. Quando os números binários com sinal
estão representados no sistema de complemento de 2, a negação é obtida pela
operação do complemento de 2.
Adição no sistema de complemento de 2
10
Exercícios:
Overflow:
Quando dois números positivos ou negativos são somados e produzem um
resultado incorreto, há a ocorrência de um overflow (transbordamento). Se a
resposta exceder o número de bits de magnitude, há um overflow nos
resultados
Círculo de números
14
É similar à multiplicação dos números decimais. Cada bit no multiplicador é multiplicado pelo multiplicando.
Os resultados são deslocados à medida que avançamos do LSB para o MSB no multiplicador. Todos os produtos
parciais são somados para geração do produto final.
Os números devem estar no formato de binário direto.
Divisão Binária
16
É similar à divisão entre decimais, mas mais simples, pois quando verificamos quantas vezes o divisor ‘cabe’ dentro
do dividendo, somente 1 ou 0 são possíveis.
A subtração que faz parte da operação de divisão normalmente é feita usando o complemento de 2.
Se os sinais do dividendo e do divisor forem os mesmos, a resposta será positiva. Em caso contrário, a resposta
será negativa.
Adição BCD
17
Quando a soma de cada dígito decimal for menor que 9, a operação será feita como a adição binária normal.
Quando a soma de cada dígito decimal for maior que 9, um 6 (binário) deverá ser adicionado. Com essa adição,
um carry (vai um) sempre será gerado.
Adição BCD
18
Quando a soma de cada dígito decimal for maior que 9, um 6 (binário) deverá ser
adicionado. Com essa adição, um carry (vai um) sempre será gerado.
Adição:
Somam-se os dígitos hex em decimais.
Se a soma for 1510, ou menos, expressa-se diretamente em dígitos hex.
Aritmética Hexadecimal - Adição
20
Adição:
Se maior que 1510, subtrai-se 1610 e soma-se um carry 1 para a próxima posição.
5 8
4 B
9 19
1 -16
10 3
A 3
Aritmética Hexadecimal - Subtração
21
Subtração:
Usa-se o mesmo método utilizado para os números binários.
Complemento de dois: (Método 1)
Aritmética Hexadecimal - Subtração
22
Subtração:
Usa-se o mesmo método utilizado para os números binários.
Complemento de dois: (Método 2)
Aritmética Hexadecimal - Subtração
23
Subtração:
Usa-se o mesmo método utilizado para os números binários.
Complemento de dois: (Método 3)
Aritmética Hexadecimal - Subtração
24
5 9 2 3 A 5 5 9 2
- 3 A 5 + C 5 B
? C 5 A 17 14 13
1 1 -16 E D
C 5 B 1
1 1 E D
Aritmética Hexadecimal
25
Para um dado com valor negativo, o bit de sinal do número binário será 1, o que sempre tornará o MSD do
número hexa maior ou igual a 8.
Quando o dado tem valor positivo, o bit de sinal será 0, sendo o MSD do número hexa menor ou igual a 7.
Ponto Flutuante
26
241506800 ,00
0 ,241506800
9 casas = expoente
Ponto Flutuante
27
1011010010001 ,
1 ,011010010001
12 casas = expoente
Ponto Flutuante
28
(1 )
+ ,011010010001
1
(1 ,011010010001 ) E = 139 - 127 = 12
1011010010001 ,
Referências
29
TOCCI, R. J; WIDMER, N. S.; MOSS, G. L. Sistemas Digitais. Ed. Person Prentice-Hall, São Paulo, 10.
ed. 2007. [Capítulo 6].
FLOYD, T. L. Sistemas digitais: Fundamentos e Aplicações. Editora Bookman, Porto Alegre, 9. ed.
2007. [Capítulo 2]