Sie sind auf Seite 1von 51

Unidade 2: Sistemas de Numerao

2.4 Operaes Aritmticas:

Soma (+)
Subtrao (-)
Relaes Binrias:
Multiplicao (x)
Diviso () arg1 op arg2

op = operador = { +, - , x , }

06.2
2.4 Operaes Aritmticas

Soma/Produto de dois nmeros (com vrios dgitos):

Conhecimento da TABUADA
[Fornece o resultado da operao
entre nmeros de um dgito]

 O resultado pode ter dois dgitos: Transporte


(Carry)
dgito de Resultado e dgito de Vai-Um

 Quando Vai-Um = 0, o resultado s tem um dgito


2.4 Operaes Aritmticas

Tabuada da Soma Sistema Decimal:


Entrada = (d1,d2) Sada = (c,r) [obtida por contagem]

(2,2) = + 0 1 2 3 4 5 6 7 8 9
0 0 1 2 3 4 5 6 7 8 9
2+1=3 1 1 2 3 4 5 6 7 8 9 10
3+1=4 2 2 3 4 5 6 7 8 9 10 11
3 3 4 5 6 7 8 9 10 11 12
4 4 5 6 7 8 9 10 11 12 13
(9,2) = 5 5 6 7 8 9 10 11 12 13 14
6 6 7 8 9 10 11 12 13 14 15
9 + 1 = 10 7 7 8 9 10 11 12 13 14 15 16
10 + 1 = 11 8 8 9 10 11 12 13 14 15 16 17
9 9 10 11 12 13 14 15 16 17 18
2.4 Operaes Aritmticas

Tabuada da Multiplicao Sistema Decimal:


Entrada = (d1,d2) Sada = (c,r) [obtida por soma]

x 0 1 2 3 4 5 6 7 8 9
(2,3) =
0 0 0 0 0 0 0 0 0 0 0
1 0 1 2 3 4 5 6 7 8 9
2+2=4
2 0 2 4 6 8 10 12 14 10 18
4+2=6
3 0 3 6 9 12 15 18 21 24 27
4 0 4 8 12 16 20 24 28 32 36
5 0 5 10 15 20 25 30 35 40 45
(9,3) =
6 0 6 12 18 24 30 36 42 48 54
7 0 7 14 21 28 35 42 49 56 63
9 + 9 = 18
8 0 8 16 24 32 40 48 56 64 72
18 + 9 = 27
9 0 9 18 27 36 45 54 63 72 81
2.4 Operaes Aritmticas

Exemplos:
5 2
8 4
1 1
8 4 8 4 x 7
+ 3 7 x 3 7 5 8 8
1 2 1 1 1
5 8 8
+ 2 5 2 2 1
8 4
3 1 0 8
x 3
Deslocamento: O peso 2 5 2
do dgito 3 uma
potncia da base maior
2.4 Operaes Aritmticas

Algoritmo da Soma:

Aplicao para nmeros de n dgitos: S=A+B

Cn Cn-1 Cn-2 Ci+1 Ci C3 C2 C1 (C0 = 0)


An-1 An-2 Ai A2 A1 A0
+ Bn-1 Bn-2 Bi B2 B1 B0

Sn Sn-1 Sn-2 Si S2 S1 S0

possvel definir duas operaes bsicas:


MeiaSoma
Soma-Completa
2.4 Operaes Aritmticas

Meia-Soma:
S0 = f (A0, B0)
C1 = g (A0, B0)

Soma-Completa: Vem-Um (Ci) e Vai-Um (Ci+1)

Si = p (Ai, Bi , Ci)
Ci+1 = q (Ai, Bi , Ci)
2.4 Operaes Aritmticas
Notas:
Soma Modular Soma Mdulo igual Base
Corresponde s ao dgito de Resultado,
desprezando-se o dgito de Vai-Um.

Expresses para o dgito de Resultado:

S0 = f (A0, B0) = [A0+ B0]MOD b

Si = p (Ai, Bi , Ci) = [Ai + Bi + Ci]MOD b


Expresso para o resultado da Soma:

S = A+B = (Ai x bi) + (Bi x bi) =


= (Si x bi) = {[Ai + Bi + Ci]MOD b x bi}
2.4 Operaes Aritmticas

Tabuada da Soma Sistema Octal:


Entrada = (d1,d2) Sada = (c,r) [obtida por contagem]

(2,2) = + 0 1 2 3 4 5 6 7
0 0 1 2 3 4 5 6 7
2+1=3 1 1 2 3 4 5 6 7 10
3+1=4 2 2 3 4 5 6 7 10 11
3 3 4 5 6 7 10 11 12
4 4 5 6 7 10 11 12 13
(7,2) = 5 5 6 7 10 11 12 13 14
6 6 7 10 11 12 13 14 15
7 + 1 = 10 7 7 10 11 12 13 14 15 16
10 + 1 = 11
2.4 Operaes Aritmticas

Tabuada da Multiplicao Sistema Octal:


Entrada = (d1,d2) Sada = (c,r) [obtida por soma]

(2,3) = x 0 1 2 3 4 5 6 7
0 0 0 0 0 0 0 0 0
2+2=4 1 0 1 2 3 4 5 6 7
4+2=6 2 0 2 4 6 10 12 14 16
3 0 3 6 11 14 17 22 25
4 0 4 10 14 20 24 30 34
(7,3) = 5 0 5 12 17 24 31 36 43
6 0 6 14 22 30 36 44 52
7 + 7 = 16 7 0 7 16 25 34 43 52 61
16 + 7 = 25
2.4 Operaes Aritmticas

Exemplos:
Decimal Octal 4 3
5 4
1 1
5 4 5 4 x 7
+ 3 7 x 3 7 4 6 4
1 1 3 1
4 6 4
+ 2 0 4 2 1
5 4
2 5 2 4
x 3
Deslocamento: O peso 2 0 4
do dgito 3 uma
potncia da base maior
2.4 Operaes Aritmticas

Exemplos:
Decimal Octal 4 3
5 4
x 7
4 x 7 = 2810 = 348 4 6 4

5 x 7 = 3510 = 438
2 1
5 4
x 3
4 x 3 = 1210 = 138
2 0 4
5 x 3 = 1510 = 178
2.4 Operaes Aritmticas

Sistema Hexadecimal:

As tabuadas da soma e da multiplicao


so semelhantes:
Exerccio: obt-las;

Os algoritmos tambm so semelhantes:


Exerccio: desenvolver exemplos.
2.4 Operaes Aritmticas

Sistema Binrio - Tabuadas:


Entrada = (d1,d2) Sada = (c,r)
+ 0 1 x 0 1
0 0 1 0 0 0
1 1 10 1 0 1

Exemplo: 1 0 11 1 1 000
1 0110 1010
+ 1 0101 1100

1 0 1 100 01 1 0
2.4 Operaes Aritmticas

Exemplo:
1 1000
x 1011
1 1 1 1
1 1000
11 000
000 00
+ 1 100 0

1 0000 1 000
2.4 Operaes Aritmticas

Operaes Aritmticas Binrias:


- Implementao Econmica

Operao Bloco Funcional


Meia-Soma Meio-Somador
Soma-Completa Somador-Completo

Estes Blocos Funcionais representam:


A operao abstrata (matemtica)
O dispositivo fsico (circuito)
2.4 Operaes Aritmticas

Meio-Somador:
Ai Bi

MEIO-
SOMADOR

Ci+1 Si

Ai Bi Ci Ci+1 Si
Somador-Completo:
0 0 0
Ai Bi
Ci 0 0 1
Ci
0 1 0
SOMADOR
0 1 1
COMPLETO
1 0 0

Ci+1 1 0 1
Si
1 1 0
1 1 1
2.4 Operaes Aritmticas

Meio-Somador:
Ai Bi

MEIO-
SOMADOR

Ci+1 Si

Ai Bi Ci Ci+1 Si
Somador-Completo:
0 0 0 0 0
Ai Bi
Ci 0 0 1 0 1
Ci
0 1 0 0 1
SOMADOR
0 1 1 1 0
COMPLETO
1 0 0 0 1

Ci+1 1 0 1 1 0
Si
1 1 0 1 0
1 1 1 1 1
2.4 Operaes Aritmticas

Somador de nmeros de n dgitos:

Somador Completo de nmeros de n dgitos:

Explicitar !
2.4 Operaes Aritmticas

Somador de nmeros de n dgitos:

Algoritmos da Soma:
Soma com Propagao do Vai-UM
(Ripple Carry Adder)

Cada bloco: Tempo de Atraso T


Atraso Total: nT
Complexidade Linear: O(n)

Soma com Antecipao do Vai-UM


(CLA - Carry Look Ahead Adder)

Complexidade Constante: O(1)


2.4 Operaes Aritmticas

Somador Completo de nmeros de n dgitos:


Algoritmo da Soma:
Soma com Propagao do Vai-UM
Diagrama de Blocos:
2.4 Operaes Aritmticas

Somador Completo de nmeros de n dgitos:


Algoritmo da Soma:
Soma com Antecipao do Vai-UM
Diagrama de Blocos:
2.4 Operaes Aritmticas

Somador Completo de nmeros de 4 dgitos:

n = 4 Explicitar !

Somador de nmeros de 8 dgitos:


Bloco: Diagrama:

n = 8
2.4 Operaes Aritmticas

Somador de nmeros de n dgitos:

Nmeros sem Sinal: Estouro !

Nmero de bits do Resultado:


Caso Ideal (matemtica abstrata):
Resultado
No h limitao de tamanho.

Caso Real (implementao):


O valor de n fixo;
Se Cn 0 , h ESTOURO da CAPACIDADE (overflow);
Cn usado como Sinalizador (flag) dessa condio.
2.4 Operaes Aritmticas

Modelos:
Sistema Binrio:
Meio-Somador
{0,1}

Sistema Fsico:
Tabela
Implementao Funcional
{L,H}

Sistema Lgico:
Modelagem Tabela da
Verdade
{F,V}
2.4 Operaes Aritmticas

Exerccio: Projetar um meio-somador binrio


Sistema Binrio:
Meio-Somador
{0,1}

Sistema Lgico:
Modelagem Tabela da
Verdade
{F,V}

Si = Ai Bi
Diagrama Lgico ?
Ci+1 = Ai Bi = Ai . Bi
2.4 Operaes Aritmticas

Exerccios:

 Projetar um somador completo a


partir de meio-somadores e de
portas lgicas;

 (Projetar um somador completo a


partir de portas lgicas.)
2.4 Operaes Aritmticas

Multiplicao Binria:
Implementao:
Somas Sucessivas;
Algoritmos especficos.

Multiplicao por Potncia da Base:

Operao de Deslocamento para a Esquerda

Implementada por um circuito Deslocador


2.4 Operaes Aritmticas

Subtrao:
arg1 - arg2

Minuendo Subtraendo

No comutativa;

S definida para arg1 arg2;

A tabuada no simtrica.
2.4 Operaes Aritmticas

Tabuada da Subtrao : d1 - d2
Entrada = (d1,d2) Sada = (b,r)

O dgito de resultado r obtido por contagem


retroativa : quanto falta para d2 chegar a d1

Se d1 < d2, necesrio tomar emprestado posio


de peso imediatamente superior do Minuendo:

 Ocorre, ento, um Emprstimo (borrow) =


Vem-Um-do-Minuendo, ou seja: b=1

Se d1 d2 , ento b=0
2.4 Operaes Aritmticas

Tabuada da Subtrao Sistema Decimal:


Entrada = (d1,d2) Sada = (b,r) [obtida por contagem
retroativa]
(4,2) = 2 - 0 1 2 3 4 5 6 7 8 9
0 0 19 18 17 16 15 14 13 12 11
2+1=3 1 1 0 19 18 17 16 15 14 13 12
3+1=4 2 2 1 0 19 18 17 16 15 14 13
3 3 2 1 0 19 18 17 16 15 14
4 4 3 2 1 0 19 18 17 16 15
1
(1,9) = ( 1,9) = 5 5 4 3 2 1 0 19 18 17 16
= 12 6 6 5 4 3 2 1 0 19 18 17
7 7 6 5 4 3 2 1 0 19 18
9 + 1 = 10
8 8 7 6 5 4 3 2 1 0 19
10 + 1 = 11
9 9 8 7 6 5 4 3 2 1 0
2.4 Operaes Aritmticas

Exemplos:
1 1
No dms,
1 - 5
2 1 houve emprstimo.
- 1 5 6 necessrio
descontar
0 6 no dgito seguinte
do Minuendo.
1
- 1
0
2.4 Operaes Aritmticas

Exemplos:
1 5
1 1 - 7
2 1 5
- 1 7 8 1 0
- 1
1 9 8
9

1
- 0
1
2.4 Operaes Aritmticas

Subtrao Outro mtodo:

Vem-Um do Minuendo = Vai-Um para o Subtraendo

No mtodo anterior, o fluxo de Vem-Um ocorre


da esquerda para a direita, ou seja, contra o
sentido de realizao do processamento;

Neste mtodo, o fluxo de Vai-Um ocorre da


direita para a esquerda, ou seja, no mesmo
sentido do processamento.

Ou seja, o Emprstimo feito pelo Minuendo,


mas a compensao feita no Subtraendo.
2.4 Operaes Aritmticas

Exemplos:
1 1
No dms,
1 - 5
2 1 houve emprstimo.
- 1 5 6 necessrio
1
descontar
0 6 no dgito seguinte,
corrigindo o
2 Subtraendo.
- 2
0
2.4 Operaes Aritmticas

Exemplos:
1 5
1 1 - 7
2 1 5
- 1 7 8 1 1
1 1
- 2
1 9 8
9

2
- 1
1
2.4 Operaes Aritmticas

Subtrao Binria:

Vem-Um do Minuendo (b) =


= Vai-Um para o Subtraendo (c)

Tabuada:
Entrada = (d1,d2) Sada = (c,r)

Subtraendo
+ 0 1
0 0 11
Minuendo 1 1 0
2.4 Operaes Aritmticas

Exemplos:
b=1
1 1
0 0 0
- 1 - 1 - 1
1
? 1 c=1 1

1
1 0 1 0 ( 2)
- 1 - 1
1 (- 1 )
? 0 1 ( 1)
2.4 Operaes Aritmticas

Exemplo:

1 1
1 0 0 1 0 0 ( 4)
- 1 - 1 (- 1 )
1 1
? 0 1 1 ( 3)
2.4 Operaes Aritmticas

Exemplo:

1100 0110
- 101 1 100
1 1 1 1

0 11 0 1 0 1 0
+ 101 1 100
2.4 Operaes Aritmticas

Algoritmo da Subtrao:
Aplicao para nmeros de n dgitos: D=A-B

An-1 An-2 Ai A2 A1 A0
_ Bn-1 Bn-2 Bi B2 B1 B0
Cn Cn-1 Cn-2 Ci+1 Ci C3 C2 C1 (C0 = 0)

Dn-1 Dn-2 Di D2 D1 D0

Cn deve ser igual a zero: A B

Cn 0 ESTOURO ( underflow): A < B


2.4 Operaes Aritmticas

Meia-Subtrao:
D0 = f (A0, B0)
C1 = g (A0, B0)

Subtrao-Completa:
Vem-Um-para-Subtraendo (Ci)
e Vai-Um-para-Subtraendo (Ci+1)

Di = p (Ai, Bi , Ci)
Ci+1 = q (Ai, Bi , Ci)
2.4 Operaes Aritmticas
Notas:
Subtrao Modular Subtrao Mdulo igual Base
Corresponde s ao dgito de Resultado,
desprezando-se o dgito de Vai-Um.
Expresses para o dgito de Resultado:

D0 = f (A0, B0) = [b + A0- B0]MOD b

Di = p (Ai, Bi , Ci) = [b + - (Bi + Ci)]MOD b


Expresses o resultado da Soma:

D =AB= (Ai x bi) - (Bi x bi) =


= (Di x bi) = {[b + Ai (Bi + Ci)]MOD b x bi}
2.4 Operaes Aritmticas

Operaes Aritmticas Binrias:


- Implementao Econmica

Operao Bloco Funcional


Meia-Subtrao Meio-Subtrator
Subtrao-Completa Subtrator-Completo

Estes Blocos Funcionais representam:


A operao abstrata (matemtica)
O dispositivo fsico (circuito)
2.4 Operaes Aritmticas

Meio-Subtrator:
Ai Bi Ai Bi Ci+1 Di
0 0
MEIO- 0 0
SUBTRATOR 0 1
0 1
Ci+1 Di

Ai Bi Ci Ci+1 Di
Subtrator-Completo:
0 0 0
Ai Bi
Ci 0 0 1
0 1 0
SUBTRATOR-
0 1 1
COMPLETO
1 0 0

Ci+1 1 0 1
Di
1 1 0
1 1 1
2.4 Operaes Aritmticas

Meio-Subtrator:
Ai Bi Ai Bi Ci+1 Di
0 0 0 0
MEIO- 0 1 1 1
SUBTRATOR 1 0 0 1
1 1 0 0
Ci+1 Di

Ai Bi Ci Ci+1 Di
Subtrator-Completo:
0 0 0 0 0
Ai Bi
Ci 0 0 1 1 1
0 1 0 1 1
SUBTRATOR-
0 1 1 1 0
COMPLETO
1 0 0 0 1

Ci+1 1 0 1 0 0
Di
1 1 0 0 0
1 1 1 1 1
2.4 Operaes Aritmticas

Subtrator de nmeros de n dgitos:


Explicitar !

Algoritmo da Subtrao:

Subtrao com Propagao do Vai-UM


Cada bloco: Tempo de Atraso T
Atraso Total: nT
Complexidade Linear: O(n)

Subtrao com Antecipao do Vai-UM


Complexidade Constante: O(1)

Implementao Normal: com o Somador


A + (-B)
2.4 Operaes Aritmticas

Subtrator Completo de nmeros de 4 dgitos:


Algoritmo da Subtrao:
Subtrao com Propagao do Vai-UM
Bloco Lgico: A B

A3 A2 A1 A0 B3 B2 B1 B0
C0
SUBTRATOR-
COMPLETO

C4 D3 D2 D1 D0

D
Diagrama de Blocos: Explicitar !
2.4 Operaes Aritmticas

Subtrator Completo de nmeros de 8 dgitos:


A B
Bloco Lgico: 8 8

SUBTRATOR
8

Diagrama de Blocos: C8
D
A7 A6 A5 A4 B7 B6 B5 B4 A3 A2 A1 A0 B3 B2 B1 B0

C4 0

A3 A2 A1 A0 B3 B2 B1 B0 C0 A3 A2 A1 A0 B3 B2 B1 B0 C0

SUBTRATOR- SUBTRATOR-
COMPLETO COMPLETO

C4 D3 D2 D1 D0 C4 D3 D2 D1 D0

C8 C4
D7 D6 D5 D4 D3 D2 D1 D0
2.4 Operaes Aritmticas

Projeto de um Bloco Lgico


a partir de outros blocos lgicos j prontos:
Problema:
Consistncia entre os nomes das entradas e das
sadas dos vrios blocos lgicos.
Soluo:
Colocar os nomes das entradas e sadas de cada
bloco usado, dentro do prpio bloco;
Colocar os nomes das entradas e sadas do bloco a
ser projetado, por fora de cada bloco usado;
s entradas no utilizadas deve ser aplicado um
valor constante (0 ou 1);
As sadas no utilizadas podem ficar flutuando.
2.4 Operaes Aritmticas

Diviso Binria:
Implementao:
Subtraes Sucessivas;
Algoritmos especficos.

Diviso por Potncia da Base:

Operao de Deslocamento para a Direita

Implementada por um circuito Deslocador

Das könnte Ihnen auch gefallen