Arquitectura de Computadoras
Unidad 1
Sistemas de Numeracion
Sistemas posiciónales: el
33
valor de los dígitos
depende de la posición 3 x 10 + 3x1
dentro
Colección del numero
de símbolos Básicos
OCC: Ordenados, Crecientes y Consecutivos
UNCa. Arquitectura de computadoras
2
Notación Extendida:
Toda magnitud puede estar representada por:
Nb = an bn + an-1 bn-1 +…+ an-2 bn-2 + a0 b0 + a-1 b-1 + a-2 b-2
∑
n
Nb = ak bk
k=0
a = coeficientes
b = base del sistema
k = posición del elemento (4, 3, 2, 1, 0, -1, -2, -3)
Ejemplos
Decimal
564,25 = 5 x 102 + 6 x 101 + 4 x 100 + 2 x 10 -1 + 5 x 10-2
564,25 = 500 + 60 + 4 + 0,2 + 0,05
Binario
1011,01 = 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 + 0 x 2-1 + 1 x 2-2
CAMBIOS DE BASE
De base 10 a cualquier base (2n)
• Parte entera: Se divide por la base sucesivamente, tomando los
restos en orden inverso
• Parte decimal: Multiplicar el numero por la base y tomar la parte
entera, con el resto se repite el proceso hasta obtener la cantidad de
decimales deseados
N % b = k-1
Ejemplo: pasar 24, 2510 a base 2 k
Parte entera: Parte Decimal
24 % 2 = 0 0,25 . 2 = 0.50
12 % 2 = 0
6 %2=0
SiSiseselogra
logra00
00finaliza
finaliza
3 %2=1 0,50 . 2 = 1.00 elelproceso
1 proceso
110 00,01
CAMBIOS DE BASE
De la base 2 a la base 2
De la base 2 a la base 2 nn
•• Agrupando
Agrupandolos
losbits
bitsde
dennen
enn,
n,de
dederecha
derechaaaizquierda
izquierda
•• Ejemplo
Ejemplo 10110011
101100112 ->->base
base88
2
10110011
1011001122==(010)(110)(011)
(010)(110)(011)==263
26388
• De la base 2n a la base 2
– Expandiendo cada digito por los n bits correspondientes
– Ejemplo B316 -> base 2
B316 = (1011)(0011) = 101100112
UNCa. Arquitectura de computadoras
5
ALGEBRA DE BOOLE
Son las matemáticas de los sistemas digitales
Definición:
• Es una estructura algebraica (B, +, *) formada por un
conjunto B de variables binarias y dos operaciones
definidas sobre B (suma y producto) que cumplen con
unos determinados postulados
ALGEBRA DE BOOLE POSTULADOS
Ambas operaciones son conmutativas
a + b = b + a
a * b = b * a
Existen dos elementos neutros, el cero (0) y el uno (1)
a + 0 = a
a * 1 = a
Cada operación es distributiva respeto a la otra
a * (b + c) = a * b + a * c
a + (b * c) = a + b * a + c
Para cada elemento “a” existe un único elemento “a” tal que
a + a = 1
a * a = 0
Teoremas
Obsérvese que los postulados se presentan en pares. Si se les examina
cuidadosamente, se observa que en cada caso, un postulado del par se
puede obtener a partir del otro, intercambiando ceros por unos y suma
por producto
a + 0 = a
a * 1 = a
Para cada elemento del álgebra se verifica que :
a + 1 = 1
a * 0 = 0
Para cada elemento a del álgebra se verifica que :
a + a = a
a * a = a
4. En el álgebra de Boole las operaciones suma y producto son asociativas:
a + ( b + c ) = ( a + b ) + c = a + b + c
a * ( b * c ) = ( a * b ) * c = a * b * c
5. Para cada par de elementos a y b del álgebra de Boole se verifica que:
a + ( a * b ) = a Absorcion
a * ( a + b ) = a
6. Para todo complemento de a se verifica que “
a = a Involucion
7. En el álgebra de Boole se verifica que :
a + b + c + d + ...... = a * b * c * d * ..... Ley Morgan
a * b * c * d * ...... = a + b + c + d + .....
Compuertas Logicas Simples
Algebra de Boole en la que ~A A B A+B A*B
B={0,1}
1 0 0 0 0
+ => Suma logica (OR) 1 0 1 1 0
* => Producto logico (AND) 0 1 0 1 0
0 1 1 1 1
~ => Negacion Logica (NOT)
A A
A ~A A+B A*B
B B
Compuestas
NOR NAND XOR (Especial)
A B A+B A+B A B A*B A*B A B A+ B
0 0 0 1 0 0 0 1 0 0 0
0 1 1 0 0 1 1 0 0 1 1
1 0 1 0 1 0 1 0 1 0 1
1 1 1 0 1 1 1 0 1 1 0
A A A
A+B A*B A+ B
B B B
Por ley De Morgan existen las siguientes equivalencias
A A
A+B ~ A * B
=
B B
A A
~
A * B A+B
=
B B
A A
A+ B A+ B
f =A+B
B B
XOR f = AB + AB NOR EXCLUSIVA
Funciones Logicas
Una variable booleana es la que representa cualquier elemento
del conjunto B sobre el que se ha definido el álgebra de boole
Una función es una variable binaria cuyo valor depende de una
expresión algebraica en la que se relacionan entre si variables
binarias por medio de operaciones básicas, suma, producto e
inversión. La representación es de la forma F (a,b,c,..)
donde a, b, c, ... son variables binarias que cumplen con el
álgebra de Boole.
Funciones Logicas
Dec A B Producto Canónico Producto Lógico
0 Negado
0 0 0 A*B 1 Directo
1 0 1 A*B
n=2 2² = 4
2 1 0 A*B
3 1 1 A*B Suma de Productos
MINTERMS ( ∑n )
Dec A B Suma Canónica
Suma Lógica
0 Directo 0 0 0 A+ B
1 Negado
1 0 1 A+ B
Producto de Sumas 2 1 0 A+ B
MAXTERMS( ∏n ) 3 1 1 A+ B
n cantidad de variables 2n términos canónicos
Expresión Canoníca
Termino canónico : todo producto o suma en la que aparecen mencionadas todas
las variables de la función, ya sea en su forma directa o inversa
suma canónica de las variables a,b,c a+b+c
producto canónico de las variables a,b,c a*b*c
El numero máximo de sumas o productos será de 2n, siendo n el numero de variables.
Para mayor facilidad de representación, se representa el termino canónico mediante
un numero decimal equivalente al binario obtenido de sustituir las variables por 0 y
1 según algún criterio.
d*c*b*a 0110 610
d+c+b+a 1010 1010
Tabla de Verdad
f = A + B*C
Dec A B C B*C f=A+B*C
0 0 0 0 0 0
Producto de Sumas
1 0 0 1 0 0
MAXTERMS( ∏n )
2 0 1 0 0 0
3 0 1 1 1 1
4 1 0 0 0 1
5 1 0 1 0 1 Suma de Productos
MINTERMS ( ∑n )
6 1 1 0 0 1
7 1 1 1 1 1
n=3 2³ = 8 variables
Metodo Algebraico
De esta manera la función lógica
f (a,b,c) = (a * b * c) + (a * b * c) + (a * b * c) + (a * b * c) + (a * b * c)
3 4 5 6 7
Se puede expresar como
F(a,b,c) = ∑ (3, 4, 5, 6,m7)
Y la función lógica
f (a,b,c) = ( a + b + c ) * ( a + b + c ) * ( a + b + c )
0 1 2
Se puede expresar como
F(a,b,c) = ∏ ( 0, 1, 2 ) m
Los símbolos ∑ y ∏ representan suma de productos en el primer caso y producto de
sumas para el segundo.
Circuito Lógico
A B C
f = A + B*C
B*C
Simplificación de Funciones
• Reducción algebraica
Aplicando los teoremas del algebra de
boole
• Mapas de Karnaugh
Método grafico, aplicable a funciones de
hasta 6 variables
Mapa de Karnaugh
Mapa de Karnaugh : método de simplificación grafico
Numero de celdas: equivale al numero de términos
de la tabla de verdad
Codificación: dos celdas adyacentes no pueden variar
en mas de 1 bit
3 variables
A 0 1 2 variables AB 00 01 11 10
B C Solo cambia el
bit b
0 0 1
0 0 1 3 2 1 --> 0
1 2 3
1 4 5 7 6