Anda di halaman 1dari 36

Representacin de Nmeros en Binario

Nmeros positivos en binario: Magnitud:


X Bi 2
i 0 N 1 i

i 15 14 : 2 1 0

3 1 1 : 0 0 0

2 1 1 : 0 0 0

1 1 1 : 1 0 0

0 1 0 : 0 1 0
1

Departamento de Mecatrnica

Representacin de Nmeros Negativos


Varios mtodos Caracterstica comn: MSB representa el bit de signo
0 nmero positivo 1 nmero negativo

Mtodos principales
Signo y magnitud Complemento a 2 Complemento a 1

Departamento de Mecatrnica 2

Representacin de Nmeros Negativos


Signo y magnitud poco adaptado al diseo de circuitos digitales:

Se requiere de N bits para la magnitud y de un bit extra para el signo. Las arquitecturas aritmticas son ms complejas.

Complemento a 2 y complemento a 1 permiten un fcil diseo de circuitos aritmticos digitales:

Objetivo: representar nmeros positivos y negativos usando el msmo nmero de bits.


Departamento de Mecatrnica 3

Numeracin en Complemento a 1
Nmero positivo, N,
0 XXXXX Donde XXXXX representa la magnitud del nmero

Nmero negativo, -N,


/N = (2n 1) N Ejemplo: Si n = 4, -N = 15 N, -3 = 15 3 = 12 = 11002

Regla: Complementar todos los bits de la palabra.


Departamento de Mecatrnica 4

Numeracin en Complemento a 2
Nmero positivo, N,
0 XXXXX Donde XXXXX representa la magnitud del nmero

Nmero negativo, -N,


N* = 2n N Donde n es el tamao de la palabra o nmero Ejemplo: Si n = 4, -N = 16 N, -3 = 16 3 = 13 = 11012

Regla: Avanzar de derecha a izquierda. Cuando se localice el primer 1, complementar los siguientes bits.
Departamento de Mecatrnica 5

Complemento a 2 vs Complemento a1
N* = 2n N = 2n 1 N + 1 = /N + 1 Obtencin de N a partir de sus complementos
N = 2n N* N = (2n 1) /N

Complemento a 2: posibilidad de representar un nmero negativo ms que un nmero positivo. Ejemplo: Para n = 4 podemos representar los valores [7 .. 8]
Departamento de Mecatrnica 6

Representacin de Nmeros Negativos


N
+0
+1 +2 +3

Enteros Positivos (Todos los sistemas)


0000
0001 0010 0011

Enteros Negativos -N
-0
-1 -2 -3

Signo y magnitud
1000
1001 1010 1011

Complemen to a 2
---1111 1110 1101

Complemen to a 1
1111
1110 1101 1100

+4 +5
+6 +7

0100 0101
0110 0111

-4 -5
-6 -7 -8

1100 1101
1110 1111 ----

1100 1011
1010 1001 1000

1011 1010
1001 1000 ----

Departamento de Mecatrnica

La Suma en Complemento a 2
La suma de nmeros con signo de n bits es directa cuando se emplea el sistema en complemento a 2. Cualquier carry de la posicin de signo se ignora La suma siempre ser correcta excepto cuando ocurre overflow Se dice que ha ocurrido overflow cuando la representacin de la suma (incluyendo el bit de signo) requiere ms de n bits
Departamento de Mecatrnica 8

La Suma en Complemento a 1
Similar a la suma en complemento a 2

Diferencia: El carry no se ignora y se suma al resultado de la suma Tambin puede ocurrir overflow, lo que indica que la suma necesita ms bits para representarse correctamente
Departamento de Mecatrnica 9

Sumadores Binarios
Operacin aritmtica bsica en el diseo de circuitos digitales ms complejos Clasificacin

Tipo de Suma
Sumador Completo (Full Adder) Sumador Medio (Half Adder)

Implementacin de Sumas con n bits


Ripple Carry Adder Carry Lookahead Adder

Departamento de Mecatrnica 10

Sumador Medio (Half Adder)


Circuito aritmtico que genera la suma de dos bits (no toma en cuenta el bit carry)
Tabla de Verdad Entradas Salidas
X
0
0 1 1

Y Cout S X Y

Y
0
1 0 1

Cout
0
0 0 1

S
0
1 1 0

HA

S Cout
11

S XY X Y X Y C XY
Departamento de Mecatrnica

Sumador Completo (Full Adder)


Circuito aritmtico que genera la suma de tres bits (entradas X y Y, y el bit carry)
X Cout
(Hacia el siguiente FA)

FA

Cin
(Del FA anterior)

S
Departamento de Mecatrnica 12

Sumador Completo (Full Adder)


Tabla de Verdad
Entradas
X 0 0 Y 0 0 Cin 0 1

Salidas
Cout 0 0 S 0 1

S X Y Cin X Y Cin X Y Cin XYCin S X Y Z Cout XY XCin YCin Cout XY Cin ( X Y X Y ) Cout XY Cin ( X Y )

0
0 1

1
1 0

0
1 0

0
1 0

1
0 1

1
1 1

0
1 1

1
0 1

1
1 1

0
0 1

Departamento de Mecatrnica

13

Sumador Completo (Full Adder)


Half Adder X Y Half Adder S

Cout Cin
Departamento de Mecatrnica 14

Sumadores de n bits
Arquitecturas capaces de realizar la suma de dos nmeros de n bits Dos tipos de intereses:

Velocidad Tamao

Dos tipos de arqutiecturas

Arquitecturas en Serie

Tamao Velocidad
Velocidad Tamao

Arquitecturas en Paralelo

Departamento de Mecatrnica

15

Sumador en Serie
Implementacin de un sumador eficiente en tamao
X = xn-1, xn-2, ,x0

xi yi
Cin

FA

Si Cout

Y = yn-1, yn-2, ,y0 Condicin: entradas sincronizadas por medio de la seal CLK
Q D

CLK
Departamento de Mecatrnica 16

Sumador Paralelo
Arquitecturas para realizar sumas de n bits donde la velocidad es el principal criterio de diseo Utilizacin de n FAs. Todos los bits se aplican simultneamente a los FAs para producir la suma Clasificacin de acuerdo a la forma de generar el bit de carry :

Ripple Carry Adder Carry Lookahead Adder Manchester Carry Chain Carry Select Adder Carry Skip Adder
Departamento de Mecatrnica 17

Ripple Carry Adder


yn-1 xn-1 y2 x2 y1 x1 y0 x0

Cn

FA
Sn-1

Cn-1

FA
s2
Cin 0 1 1 0 X 1011 Y 0011 S 1110 Cout 0 0 1 1

c2

FA
s1

c1

FA
s0

c0

Departamento de Mecatrnica

18

Ripple Carry Adder


Aplicacin simultnea de las entradas X, Y Cada FA genera S y Cout simultneamente despus de Tp segundos (Tp : tiempo de propagacin) Inestabilidad inicial debido a Tp Despus de nTp segundos, el sumador produce la suma total Desventaja: Tiempo de propagacin muy largo (nTp)

Departamento de Mecatrnica

19

Ripple Carry Adder


Todas las clulas propagan:

Sn requiere de Cn-1 El tiempo de propagacin ser igual a 3(TpropFA)


A0 B0 A1 B1 A2 B2 A3 B3

C0

FA

C1

FA

C2

FA

C3

FA

C4

S0

S1

S2

S3

S4
20

Departamento de Mecatrnica

Ripple Carry Adder


Si al menos una de las clulas FA no propaga Carry:

Sn no requerir de Cn-1 El tiempo de propagacin ser igual a 2(TpropFA


A0 B0 A1 B1 A2 B2
A3 B3

C0

FAp

C1

FAI

C2

FAp

C3

FAI

C4

S0

S1

S2

S3

S4
21

Departamento de Mecatrnica

Sumador/Restador
Recordando: El complemento 2 permite representar nmeros positivos y negativos usando el mismo nmero de bits, tambin permite tener un nico cdigo para el cero. La resta se obtiene de la siguiente forma:

Se obtiene el complemento 2 del nmero afectado por el signo negativo. Se realiza una suma directa bit a bit. Si el Overflow es 1, el resultado de la suma es la magnitud positiva (resultado positivo). Si el Overflow es 0, el resultado de la suma es la magnitud en complemento a dos (resultado negativo).
Departamento de Mecatrnica 22

Sumador/Restador
Ejemplo:
1010 (10) - 0010 (2) (8)
2: 0010 1101 + 1 1110 (14)

1010 (10) + 1110 (14) 1 1000 (8)


En este caso, como el OV = 1 el resultado es un nmero positivo y la magnitud del mismo se obtiene directamente
Departamento de Mecatrnica 23

Sumador/Restador
Ejemplo:
1010 (10) - 1100 (12) (-2)

2: 1100 0011 + 1 0100 (8)

1010 (10) + 0100 (8) 0 1110 (14) 0001 + 1 0010


En este caso, OV = 0 el resultado es un nmero negativo y la magnitud del mismo se obtiene con el 2
Departamento de Mecatrnica 24

Sumador/Restador
Diseo del circuito:
A0 /B0 A1 /B1 A2 /B2 A3 /B3 An /Bn

FA
S0

FA
S1

FA
S2

FA
S3

FA
Sn

OV

Departamento de Mecatrnica

25

Sumador/Restador
Diseo del circuito:
A0 A1 A2 A3 An

B0 /B0

B1 /B1

B2 /B2

B3 /B3

Bn /Bn

0 1

Sumador de n bits

OV

S0

S1

S2

S3

Sn

Departamento de Mecatrnica

26

Sumador/Restador
Diseo del circuito:
R/S

A0 B0

A1 B1

A2 B2

A3 B3

An Bn

Sumador de n bits

OV

S0

S1

S2

S3

Sn
27

Departamento de Mecatrnica

Multiplicador
Existen varios mtodos bsicos para el clculo de la multiplicacin de dos nmeros (A, B) de N bits:

Almacenamiento de los 22*N resultados posibles en una memoria ROM y utilizar los 2*N bits para el direccionamiento. Calcular los 2N funciones lgicas y realizar la suma correspondiente. En base a la codificacin anterior optimizar teniendo en cuenta una relacin de dependencia entre los nmeros A y B y el resultado M.
Departamento de Mecatrnica 28

Multiplicador
La multiplicacin consiste en una serie de operaciones AND entre los distintos bits y una serie de sumas.
Se requieren de 2N compuertas AND. Se requiere de N sumadores de N bits Problema: Extensin del signo. Problema: Tratamiento del signo del operando B.

Departamento de Mecatrnica 29

Multiplicacin
A3 A2 A1 A0
X B3 B2 B1 B0 A/0 A/1 A/2 A codificado

A
B B

(+/-)(A/N)2 i

A*B

A/3 R= Bi A 2 i
Departamento de Mecatrnica 30

Multiplicacin
A3 A2 A1 A0 B0
A3/0 A2/0 A1/0 A0/0

B1
A3/1 A2/1 A1/1 A0/1

B2
A3/2 A2/2 A1/2 A0/2

B3
A3/3 A2/3 A1/3 A0/3

Matriz de sumas

M7

M6

M5

M4

M3

M2

M1

M0
31

Departamento de Mecatrnica

Multiplicacin
A3/1 A2/1 A3/0 A1/1 A2/0 A0/1 A1/0 A0/0

HA
A3/2 A2/2 A1/2

FA
A0/2

FA

HA

FA
A3/3 A2/3 A1/3

FA
A0/3

FA

HA

FA

FA

FA

HA

M7

M6

M5

M4

M3

M2

M1

M0

Departamento de Mecatrnica

32

Multiplicacin
Descripcin de la multiplicacin sin signo en dos bloques: A3 A2 A1 A0
B0 B1 B2 B3

Codificador A/N

Sumatoria de A/N
M7 M6 M5 M4 M3 M2 M1 M0
Departamento de Mecatrnica 33

Divisin
La divisin, como todos sabemos, es una serie de divisiones sucesivas. El objetivo es ver, para A/B cuantas veces cabe el nmero B en A. O en otras palabras por qu nmero tengo que multiplicar B para obtener A. Se obtiene un cociente y un residuo.
Departamento de Mecatrnica 34

Divisin
Ejemplo:
101 110 100010 -110 101 -000 1010 -110 100
Cociente Resta Compara

Resta Residuo

Departamento de Mecatrnica

35

Divisor
Circuito:
Sentido del corrimiento CLK Dividendo (A) Shift control Resta/ Compara Mquina Subb Enable de estados

Start
CLK Overfow

Divisor (B)

Borrow

Departamento de Mecatrnica

36

Anda mungkin juga menyukai