Você está na página 1de 45

Aula 5

Aritmética Binária

SEL 0414 - Sistemas


Si t Di
Digitais
it i

Prof. Dr. Marcelo Andrade da Costa Vieira


Aritmética Binária

1. SOMA DE DOIS NÚMEROS BINÁRIOS

Álgebra
g Aritmética (+)
Booleana (OR)

0+0=0 0+0=0 “Carry”

0+1=1 0+1=1+0=1
1+0=1 1 + 1 = 0 e “vai
“ i um”” = (10)
1+1=1 1 + 1 + 1 = 1 e “vai um” = (11)
( )
Aritmética Binária

1. SOMA DE DOIS NÚMEROS BINÁRIOS

0 0 1 1 1
+0 +1 +0 +1 +1
0 1 1 10 0 “e
“ vaii um””

1 1
+1 +1
+1 +1
“e vai um”
11 1
Aritmética Binária

1. Exemplos

N° 1
1 1 1 1

1 1 0 0 1 Conferindo:
25
1 0 1 1+
11 +
1 0 0 1 0 0 36
Aritmética Binária

1. Exemplos

N° 2
1 1 1 1

1 0 0 1 Conferindo:
09
1 1 1 1+
15 +
1 1 0 0 0 24
Aritmética Binária

1. Exemplos

N° 3
1 1 1 1

11,0 1 1 Conferindo:
3,375
10,1 1 0+
2 750 +
2,750
110, 0 0 1 6,125
Aritmética Binária

2. SOMA DE DOIS NÚMEROS BCD

52 0 1 0 1 0 0 1 0
43 + 0 1 0 0 0 0 1 1 +
95
1 0 0 1 0 1 0 1
Aritmética Binária

2. SOMA DE DOIS NÚMEROS BCD

Quando a soma for maior do que 9?

6 0 1 1 0 BCD para 6
7+ 0 1 1 1 + BCD para 7
13
1 1 0 1 BCD Inválido!

Somar 6 (0110) ao resultado


S l d fi
finall para corrigir
i i o código
ódi
BCD inválido e adicionar o “carry” que será gerado!
Aritmética Binária

2. SOMA DE DOIS NÚMEROS BCD

26 0 0 1 0 0 1 1 0
57+ 0 1 0 1 0 1 1 1 +
83 1
0 1 1 1 1 1 0 1
0 1 1 0 + Adicione 6
1 0 0 0 0 0 1 1
8 3
Aritmética Binária

3. SUBTRAÇÃO BINÁRIA

Aritmética ( - )

0-0=0
1-1=0 “Borrow”
Borrow

1-0=1
0 - 1 = 1 e “empresta um”
Aritmética Binária

3. SUBTRAÇÃO BINÁRIA

0 1 1 0 10 (2)
-0 - 0 - 1 - 1 - 1 (1)
0 1 0 1 1 (2-1=1)

“empresta um”
(2 – 1 = 1)
Aritmética Binária

3. Exemplos

N° 1

Conferindo:
1 1 0 0 1
25
1 0 1 1- 11 -
0 1 1 1 0 14
Aritmética Binária

3. Exemplos

N° 2

11
1 0 1 1
25 -
1 1 0 0 1-
-14
14
Aritmética Binária

4. Números negativos

BIT DE SINAL

Bit mais significativo (MSB) = indicador de sinal:


• se MSB = 0 Î +
• se MSB = 1 Î -
Portanto, o número binário pode ser representado por:
SINAL / MAGNITUDE
Sistema
Si t Si
Sinal-
l
Magnitude
MSB ( 1) bits
(n-1) bit restantes
t t
SISTEMA SINAL-MAGNITUDE

Não é muito utilizado!


Aritmética Binária

5. Complemento de um número

Em binário:

Complemento Î (2n - 1) - número

Î substituem-se todos os “0” por “1” e vice-versa

Comp. de 10110 = 01001

((25 – 1)) = 32 – 1 = 31 Î 11111 ((31)) - 10110 ((22)) = 01001 ((9))


Aritmética Binária

Complemento

Comp. de 11011010 = 00100101

(28 – 1) = 255 Î 11111111 (255) - 11011010 (218) = 00100101 (37)


Aritmética Binária

Complemento de 2

Em binário:

Complemento de 2 Î (2n) - número

Î substituem-se todos os “0” por “1” e vice-versa


Î soma-se “1” ao resultado

Comp. de 2 de 10110 = 01010

(25) = 32 Î 100000 (32) - 10110 (22) = 01010 (10)


Aritmética Binária

Complemento de 2

Comp. de 2 de 11011010 = 00100110

(28) = 256 Î 100000000 (256) - 11011010 (218) = 00100110 (38)


Aritmética Binária

6 R
6. Representação
t ã dde números
ú com sinal
i l
usando complemento de 2
COMPLEMENTO DE 2

Bit mais significativo (MSB) = indicador de sinal:

• se MSB = 0 Î + SINAL / MAGNITUDE

• se MSB = 1 Î - SINAL / COMPLEMENTO DE 2

Sistema de
complemento de 2
SISTEMA COMPLEMENTO DE 2

Muito utilizado!
Aritmética Binária

Exemplos

+13 Î 01101

- 9 Î 01001 Î 10110 + 1 Î 10111

- 8 Î 01000 Î 10111 + 1 Î 11000


Aritmética Binária

Exemplos

01100 Î + 12
6

11010 Î 00101 + 1 Î 00110 Î - 6

15

10001 Î 01110 + 1 Î 01111 Î - 15


Aritmética Binária

Negação

Negamos um número calculando seu complemento de 2

+13 = 01101 Î

Î - 13 = 10010 + 1 = 10011 Î

Î + 13 = 01100 + 1 = 01101
Aritmética Binária

Subtração como soma de complementos

Subtração = soma com o complemento do subtraendo

A - B = A + ((--B)

Em decimal, por ex.: 8 - 6 = 2 8


C
Complemento
l t d
de 6 = 4 + 4
12
Aritmética Binária

7. Subtração por complemento de 2

Ex1: 51 0110011
18 - 0010010- comp. 2: 1101110

0110011
1101110+
10100001

Desprezado
p q
quando Resultado final ((+33))
estiver à esquerda
do bit de sinal
Aritmética Binária

7. Subtração por complemento de 2

Ex2: 18 0010010
51 - 0110011 comp. 2: 1001101

0010010
1001101+
1011111 0100001

33
Resultado final (-33)
Aritmética Binária

0´s e 1´s à esquerda

A quantidade de 0´s colocados à esquerda de


um número positivo ou 1´s
1 s colocados à
esquerda de um número negativo não altera
seu valor

+13
13 = 01101 Î +13 = 00001101

- 13 = 10010 + 1 = 10011 Î - 13 = 1110011

Usado para representar qualquer número binário


binário, positivo ou
negativo, com o número de bits desejado.
Aritmética Binária

7. Subtração por complemento de 2

Ex3: 5 101 000101


25 - =
11001– 011001–
Preencha com zeros à esquerda até
que os bits
bit de
d sinal
i l fiquem
fi alinhados
li h d

000101
100111+
101100 010100

20
Resultado final (-20)
Aritmética Binária

7. Subtração por complemento de 2

Ex4: 25 11001 011001


5- =
101– 000101–
Preencha com zeros à esquerda até
que os bits
bit de
d sinal
i l fiquem
fi alinhados
li h d

011001
111011+
1010100 Resultado final (+20)

Desprezado quando
estiver à esquerda
do bit de sinal
Aritmética Binária

8 R
8. Representação
t ã d de números
ú com sinal
i l
usando complemento de 2

FAIXA COMPLETA DE VALORES QUE PODEM SER


REPRESENTADOS

(n--1) Î + (2(n
– 2(n (n--1) – 1)

sendo
d n o número
ú d
de bit
bits
Aritmética Binária

Exemplo

“Quantos números com sinal podem ser representados


utilizando
tili d 4 bit
bits?”
?”

– (2n-1) Î + (2n-1 – 1) = 1000 (–


(–8) Î 0111 (+7)

“Quantos números sem sinal podem ser representados


utilizando 4 bits?”
bits?

2n = 16 Î 0 → 15
Aritmética Binária

“Q
“Quantos
t números
ú i l podem
com sinal d ser representados
t d
utilizando 4 bits?”
Aritmética Binária

Caso especial de complemento de 2

1000 Î 0111 + 1 Î 1000

“S
“Sempre que o número
ú com sinal
i l titiver um 1 no bit d
de sinal
i le
zero em todos os outros bits, seu equivalente decimal será
- 2n, sendo n o número de bits da magnitude”
magnitude

1000 = -23 = - 8 01000 = + 8


10000 = -24 = - 16 010000 = + 16
Aritmética Binária

9. Overflow

Pode ser representado com 5 bits. Precisa de


Ex1: 18 6 bits para representar o sinal

60 +
0010010
0111100+
Pode ser representado com 6 bits. Precisa de 7
bits para representar o sinal

1001110 78 (precisa
( i d de 7 bit
bits!)
!)

Não é bit d
Nã de sinal!
i l!
O resultado não pode ser
representado com 6 bits,
pois é maior do q
p que 26 = 64!
Com bit de sinal, seriam
necessários 8 bits! 01001110 +78 (precisa de 8 bits!)
Aritmética Binária

9. Overflow

Ex2: - 18
- 60
0010010
- (18+60)
0111100+
01001110 +78 (precisa de 8 bits!)

bit de sinal!

comp.
p 2: 1 0 1 1 0 0 1 0

Resultado final
f (-78)
( 8)
Aritmética Binária

9. Overflow

Precisa ser representado com


Ex2: - 18 no mínimo 6 bits

- 60
1101110
1000100+
Precisa ser representado com
no mínimo 7 bits

10110010 (
(precisa
i d de 8 bit
bits!)
!)

bit de sinal!
comp. 2: 0 1 0 0 1 1 1 0

78
Resultado final (-78)
Aritmética Binária

9. Overflow

• Só pode ocorrer overflow quando dois números positivos


ou dois números negativos são somados.
somados Assim,
Assim não pode
haver mudança de sinal na resposta.

• Nesse caso, a necessidade de um bit extra é detectada


quando o bit de sinal da resposta é diferente dos números
somados
d ou subtraídos.
bt íd

• Quando isso ocorrer,


ocorrer um bit de sinal deve ser adicionado
no bit mais significativo.
Aritmética Binária

10. MULTIPLICAÇÃO BINÁRIA

1 1 0 0 1
1 1x
1 1 0 0 1
1 1 0 0 1
1 0 0 1 0 1 1

25 x 3 = 75
Aritmética Binária

10. MULTIPLICAÇÃO BINÁRIA

Multiplicamos um número binário por 2 cada vez que


seus bits são rotacionados para a esquerda e o zero
é colocado no bit menos significativo.

1 0 0 1 = 9

1 0 0 1 0 = 9 x 2 = 18

1 0 0 1 0 0 = 9 x 4 = 36
Aritmética Binária

11. DIVISÃO BINÁRIA

Dividimos um número binário por 2 cada vez que seus


bits são rotacionados para a direita e o zero é
colocado no bit mais significativo.
Atenção:
ç Usar vírgula
g q
quando o bit menos significativo
g
for igual a 1!
1 0 0 1 0 = 18

0 1 0 0 1 = 18 : 2 = 9

0 0 1 0 0 , 1 = 18 : 4 = 4,5

0 0 0 1 0 , 0 1 = 18 : 8 = 2,25
Aritmética Binária

11. DIVISÃO BINÁRIA

1 1 0 0 1 10
A B -1
1 0 1100
R Q
01 0
- 1 0
0 0 0
25 2 -0 0
1 12 0 0 1
-0 0
0 1
Aritmética Binária

11. DIVISÃO BINÁRIA

1 1 0 0 1 10
25 ÷ 2 = 12,5
12 5 -1 0 1 1 0 0,1
01 0
- 10
00 0 1
00 0 10
- 1 0
0 0 0 0 0
Exercícios

1. 100011 ÷ 101 => ( 111 )

2. 100111 ÷ 110 => ( 110,1 )

3. 21 – 13 => ( 01000 )

4. 14 – 17 => (111101)
FIM