You are on page 1of 15

UNIDAD III

3.-Algebra booleana
3.1.-sistema numéricos y teoremas y postulados
En matemáticas, varios sistemas de notación que se han usado o se usan para
representar cantidades abstractas denominadas números. Un sistema numérico
está definido por la base que utiliza. La base de un sistema numérico es el número
de símbolos diferentes o guarismos, necesarios para representar un número
cualquiera de los infinitos posibles en el sistema. A lo largo de la historia se han
utilizado multitud de sistemas numéricos diferentes.

Los computadores manipulan y almacenan los datos usando interruptores


electrónicos que están ENCENDIDOS o APAGADOS. Las computadoras sólo
pueden entender y usar datos que están en este formato binario, o sea, de dos
estados. Los unos y los ceros se usan para representar los dos estados posibles
de un componente electrónico de una computadora. Se denominan dígitos
binarios o bits. Los 1 representan el estado ENCENDIDO, y los 0 representan el
estado APAGADO.

El Código americano normalizado para el intercambio de información (ASCII) es el


código que se usa más a menudo para representar los datos alfanuméricos de una
computadora. ASCII usa dígitos binarios para representar los símbolos que se
escriben con el teclado. Cuando las computadoras envían estados de
ENCENDIDO/APAGADO a través de una red, se usan ondas eléctricas, de luz o
de radio para representar los unos y los ceros.

Debido a que las computadoras están diseñados para funcionar con los
interruptores ENCENDIDO/APAGADO, los dígitos y los números binarios les
resultan naturales. Los seres humanos usan el sistema numérico decimal, que es
relativamente simple en comparación con las largas series de unos y ceros que
usan los computadores. De modo que los números binarios del computador se
deben convertir en números decimales.

A veces, los números binarios se deben convertir en números Hexadecimales


(hex), lo que reduce una larga cadena de dígitos binarios a unos pocos caracteres
hexadecimales. Esto hace que sea más fácil recordar y trabajar con los números.
Bits y Bytes

Un número binario 0 puede estar representado por 0 voltios de electricidad (0 = 0


voltios).

Un número binario 1 puede estar representado por +5 voltios de electricidad (1 =


+5 voltios).

Los computadores están diseñados para usar agrupaciones de ocho bits. Esta
agrupación de ocho bits se denomina byte. En un computador, un byte representa
una sola ubicación de almacenamiento direccionable. Estas ubicaciones de
almacenamiento representan un valor o un solo carácter de datos como, por
ejemplo, un código ASCII. La cantidad total de combinaciones de los ocho
interruptores que se encienden y se apagan es de 256. El intervalo de valores de
un byte es de 0 a 255. De modo que un byte es un concepto importante que se

debe entender si uno trabaja con computadores y redes.

Sistemas Numéricos

Sistema Numérico de Base 10


Los sistemas numéricos están compuestos por símbolos y por las normas
utilizadas para interpretar estos símbolos. El sistema numérico que se usa más a
menudo es el sistema numérico decimal, o de Base 10. El sistema numérico de
Base 10 usa diez símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9. Estos símbolos se pueden
combinar para representar todos los valores numéricos posibles.

Ejemplo: 2134 = 2134


Hay un 4 en la posición correspondiente a las unidades, un 3 en la posición de las
decenas, un 1 en la posición de las centenas y un 2 en la posición de los miles.
Este ejemplo parece obvio cuando se usa el sistema numérico decimal. Es
importante saber exactamente cómo funciona el sistema decimal, ya que este
conocimiento permite entender los otros dos sistemas numéricos, el sistema
numérico de Base 2 y el sistema numérico hexadecimal de Base 16. Estos
sistemas usan los mismos métodos que el sistema decimal.

Sistema Numérico de Base 2

Los computadores reconocen y procesan datos utilizando el sistema numérico


binario, o de Base 2. El sistema numérico binario usa sólo dos símbolos, 0 y 1
(ENCENDIDO/APAGADO), en lugar de los diez símbolos que se utilizan en el
sistema numérico decimal.

Ejemplo: 101102 = 22

Sistema Numérico de Base 8

El inconveniente de la codificación binaria es que la representación de algunos


números resulta muy larga. Por este motivo se utilizan otros sistemas de
numeración que resulten más cómodos de escribir: el sistema octal y el sistema
hexadecimal. Afortunadamente, resulta muy fácil convertir un número binario a
octal o a hexadecimal.

En el sistema octal, usa ocho dígitos diferentes: 0, 1, 2, 3, 4, 5, 6 y 7. Ejemplo:

El número octal 2738 = 149610

Sistema Numérico de Base 16 (Hexadecimal)

El sistema hexadecimal usa dieciséis símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C,


D, E y F. Se utilizan los caracteres A, B, C, D, E y F representando las cantidades
decimales 10, 11, 12, 13, 14 y 15 respectivamente, porque no hay dígitos mayores
que 9 en el sistema decimal.

Ejemplo:

El número hexadecimal 1A3F16 = 671910


POSTULADOS Y TEOREMAS.
Dentro de las algebras de Boole, es de utilidad definir la bivalencia, es decir,
compuesta por solo dos elementos. Así, el álgebra es un conjunto de elementos
binarios relacionados entre sí mediante las operaciones lógicas: Producto [*] y suma
[+], que cumplen con los siguientes postulados (las letras a, b, c, etc.indican
variables binarias):

Sea B un conjunto en el cual se definen dos operaciones binarias, + y *, y una


operación unitaria denotada; sean 0 y 1 dos elementos diferentes de B. Entonces la
séxtupla:
〈B, +, *, ¯, 0, 1〉
Se denomina álgebra de Boole si se cumplen los siguientes axiomas para
cualesquiera elementos a, b, c del conjunto B:
1) Las dos operaciones cumplen con la propiedad conmutativa [B 1]:
(1a) a + b = b + a
(1b) a * b = b * a

2) Propiedad distributiva [B2]:


(2a) a * (b + c) = (a * b) + (a * c)
(2b) a + (b * c) = (a + b) * (a + c)

3) Existe el elemento identidad [B3]:


(3a) a + 0 = a
(3b) a * 1 = a

4) Complemento [B4]:
(4a) a + ā= 1

(4b) a * ā = 0

La tabla siguiente resume las propiedades y los teoremas más significativos del
álgebra booleana.

dfed
3.2.-funciones e implementaciones de compuertas lógicas
Una puerta lógica, o compuerta lógica, es un dispositivo electrónico con una
función booleana. Suman, multiplican, niegan o afirman, incluyen o excluyen
según sus propiedades lógicas. Se pueden aplicar a tecnología electrónica,
eléctrica, mecánica, hidráulica y neumática. Son circuitos de
conmutación integrados en un chip. Experimentada con relés o interruptores
electromagnéticos para conseguir las condiciones de cada compuerta lógica, por
ejemplo, para la función booleana Y (AND) colocaba interruptores en circuito serie,
ya que con uno solo de estos que tuviera la condición «abierto», la salida de la
compuerta Y sería = 0, mientras que para la implementación de una
compuerta O (OR), la conexión de los interruptores tiene una configuración
en circuito paralelo.
La tecnología microelectrónica actual permite la elevada integración
de transistores actuando como conmutadores en redes lógicas dentro de un
pequeño circuito integrado. El chip de la CPU es una de las máximas expresiones
de este avance tecnológico.
En nanotecnología se está desarrollando el uso de una compuerta lógica
molecular, que haga posible la miniaturización de circuitos.

Lógica directa
Puerta SI o BUFFER
La puerta lógica SI realiza la función booleana igualdad. En la práctica se suele
utilizar como amplificador de corriente o como seguidor de tensión, para adaptar
impedancias (buffer en inglés).
La ecuación característica que describe el comportamiento de la puerta SI es:

Su tabla de verdad es la siguiente:


Tabla de verdad puerta
SI
Puerta AND
La puerta lógica Y, más conocida por su nombre en inglés AND (AND=Y=A),
realiza la función booleana de producto lógico. Su símbolo es un punto (·), aunque
se suele omitir. Así, el producto lógico de las variables A y B se indica como AB, y
se lee A y B o simplemente A por B.
La ecuación característica que describe el comportamiento de la puerta AND es:

Tabla de verdad puerta AND

Así, desde el punto de vista de la aritmética módulo 2, la compuerta AND implementa el


producto módulo 2.

Puerta OR
La puerta lógica O, más conocida por su nombre en inglés OR (OR=0=V), realiza
la operación de suma lógica.
La ecuación característica que describe el comportamiento de la puerta OR es:
F=A+B
Su tabla de verdad es la siguiente:

Podemos definir la puerta OR como aquella que proporciona a su salida


un 1 lógico si al menos una de sus entradas está a 1
Puerta OR-exclusiva (XOR)
La puerta lógica OR-exclusiva, más conocida por su nombre en inglés XOR,
realiza la función booleana A'B+AB'. Su símbolo es (signo más "+" inscrito en un
círculo). En la figura de la derecha pueden observarse sus símbolos
en electrónica.
La ecuación característica que describe el comportamiento de la puerta XOR es:

Su tabla de verdad es la siguiente:

Se puede definir esta puerta como aquella que da por resultado uno, cuando los
valores en las entradas son distintos. ej: 1 y 0, 0 y 1 (en una compuerta de dos
entradas). Se obtiene cuando ambas entradas tienen distinto valor.
Si la puerta tuviese tres o más entradas, la XOR tomaría la función de suma de
paridad, cuenta el número de unos a la entrada y si son un número impar, pone un
1 a la salida, para que el número de unos pases a ser par. Esto es así porque la
operación XOR es asociativa,
para tres entradas escribiríamos: Su tabla de verdad
sería:

Desde el punto de vista de la aritmética módulo 2, la puerta XOR implementa la


suma módulo 2, pero mucho más simple de ver, la salida tendrá un 1 siempre que
el número de entradas a 1 sea impar.
Lógica negada
Puerta NO (NOT
La puerta lógica NO (NOT en inglés) realiza la función booleana de inversión o
negación de una variable lógica. Una variable lógica (A) a la cual se le aplica la
negación se pronuncia como "no A" o "A negada".
La ecuación característica que describe el comportamiento de la
puerta NOT es: F=A
Su tabla de verdad es la siguiente:

Se puede definir como una puerta que proporciona el estado inverso del que esté
en su entrada.

Puerta NO-Y (NAND)


La puerta lógica NO-Y, más conocida por su nombre en inglés NAND, realiza la
operación de producto lógico negado. En ocasiones es llamada también barra de
Sheffer En la figura de la derecha pueden observarse sus símbolos en electrónica.

Puerta NAND con transistores


La ecuación característica que describe el comportamiento de la puerta NAND es:
Su tabla de verdad es la siguiente:

Podemos definir la puerta NO-O como aquella que proporciona a su salida


un 1 lógico sólo cuando todas sus entradas están a 0. La puerta lógica NOR
constituye un conjunto completo de operadores.
Puerta NOR-exclusiva (XNOR)
La puerta NO-exclusiva, más conocida por su nombre en inglés NOR exclusive o
XNOR, es el complemento de la puerta OR exclusiva, siendo su función
booleana AB + A’B’. Se utiliza el mismo símbolo que la puerta OR exclusiva (signo
más “+” inscrito en un círculo) y su representación en el diseño de circuitos lógicos
y ecuación que la describe.

Las tablas de verdad para dos y tres entradas o variables son las siguientes:

Esta puerta al ser el complemento de la puerta OR exclusiva (XOR), sus


resultados son uno (1) cuando sus entradas, para el caso de 2, son iguales, ya
sean con valor 0 o valor 1 (0 y 0, ó 1 y 1). Para más de 2 entradas, si el número de
unos de entradas es par, la salida es 1 y si es impar, la salida es 0. Si todas las
entradas son 0, la salida es 1, como puede comprobarse en la tabla de verdad de
tres entradas.
3.3.-Minimizacion y circuitos secuenciales

¿Que es la minimización?

Básicamente es la simplificación de una función, obteniendo una expresión que


contenga menos términos o menos variables que la función original. Esto se refleja
en la obtención de circuito mas económicos por tener un menor numero de
compuertas.

La simplificación de estas funciones puede realizarse con el uso de álgebra de Boole


pero no es un método sencillo de ejecutar. La manipulación de funciones booleana
puede llegar a ser muy compleja y muchas veces es necesario un ingenio
considerable y quizás mucha suerte.

La minimización con álgebra de Boole presenta dos limitaciones importantes:


No existe un algoritmo que nos garantice encontrar la forma mas simple de la
expresión.

· Dado un determinado resultado intermedio no hay forma de saber si realmente


hemos llegado a la forma mínima.

Para efecto de este curso cuando nos referimos a una expresión mínima, nos
estamos refiriendo a la expresión mas simple de dos niveles.

Forma de dos niveles

Cualquier función booleana puede ser implantada con dos niveles de compuertas.

Como se señaló anteriormente una función puede ser representada utilizando la


forma suma de productos como:

f = (N)+( N)+(N ) .......+ (N )

De esta manera los términos (N) son productos de las variables de entrada
(negadas o no) que se realizan con compuertas AND. Los + se realizan con una
compuerta OR de tantas entradas como términos productos haya en la función.

Como resultado tendremos que la función puede realizase con dos niveles de
compuertas:
El nivel 1 representado por las compuertas AND y el nivel 2 representado por la
compuerta OR, como se muestra en la figura. (En el nivel 1 se consideran también
la variable negada, que siendo formales se implantan con una compuerta NOT.)
Como señalamos anteriormente, la simplificación de las
funciones lógicas es una meta importante por el hecho de
que cuanto mas sencilla sea la función, más fácil será
construir el circuito equivalente. El objetivo de la
simplificación es el de minimizar el costo de implantación
de una función mediante componentes electrónicos,
donde el costo depende del número y complejidad de los
elementos necesarios para construirla.
La optimalidad de la simplificación utilizando Algebra de
Boole depende de la habilidad del diseñador para aplicar
la propiedad más adecuada en cada paso del proceso.
Esta tarea se hace cada vez más difícil al crecer la complejidad de la expresión.
Por ello, se utilizan algunos métodos que facilitan y automatizan el proceso de
simplificación de las funciones lógicas, como lo son los Mapas de Karnaugh, y el
método de Quine-McCluskey. (Para este curso solo se cubrirá el método de
Mapas de Karnaugh) l
En este punto, siendo la minimización el último paso antes de la implantación en el
diseño de un sistema digital y antes de pasar a describir el método de
minimización utilizando Mapas de Karnaugh, resumamos los diferentes pasos que
deben seguirse en un problema de diseño de lógica combinacional.
1. Se toman las proposiciones y se simbolizan.
2. Se construye una tabla de verdad con todas las combinaciones posibles de
las variables de entrada y se coloca un 1 para las combinaciones que cumplan con
las condiciones de diseño.
3. Se obtiene la forma canónica Suma de productos tomando los minterminos de
la tabla de verdad que sean iguales a 1.
4. Se simplifica la función utilizando Mapas de Karnaugh y se obtiene una
expresión mínima de dos niveles

Sistema secuencial
A diferencia de los sistemas combinacionales, en los sistemas secuenciales, los
valores de las salidas, en un momento dado, no dependen exclusivamente de los
valores de las entradas en dicho momento, sino también dependen del estado
anterior o estado interno.1 El sistema secuencial más simple es el biestable, de los
cuales, el de tipo D (o cerrojo) es el más utilizado actualmente.
El sistema secuencial requiere de la utilización de un dispositivo de memoria que
pueda almacenar la historia pasada de sus entradas (denominadas variables de
estado) y le permita mantener su estado durante algún tiempo, estos dispositivos
de memoria pueden ser sencillos como un simple retardador o celdas de
memoria de tipo DRAM, SRAM2 o multivibradores biestables también conocido
como Flip-Flop1 entre otros.
Elementos.
En todo sistema secuencial nos encontraremos con:
a) Un conjunto finito, n, de variables de entrada (X1, X2,..., Xn).
b) Un conjunto finito, m, de estados internos, de aquí que los estados
secuenciales también sean denominados autómatas finitos. Estos estados
proporcionarán m variables internas (Y1,Y2,..., Ym).
c) Un conjunto finito, p, de funciones de salida (Z1, Z2,..., Zp).Dependiendo de
cómo se obtengan las funciones de salida, Z, los sistemas secuenciales pueden
tener dos estructuras como las que se observan en la siguiente figura,
denominadas: a) Máquina de Moore y b) Máquina de Mealy

Tipos de sistemas secuenciales


En este tipo de circuitos entra un factor que no se había considerado en los
circuitos combinacionales, dicho factor es el tiempo, según como manejan el
tiempo se pueden clasificar en: circuitos secuenciales síncronos y circuitos
secuenciales asíncronos.
circuitos secuenciales asíncronos
En circuitos secuenciales asíncronos los cambios de estados ocurren al ritmo
natural asociado a las compuertas lógicas utilizadas en su implementación, lo que
produce retardos en cascadas entre los biestables del circuito, es decir no utilizan
elementos especiales de memoria, lo que puede ocasionar algunos problemas de
funcionamiento, ya que estos retardos naturales no están bajo el control del
diseñador y además no son idénticos en cada compuerta lógica
circuitos secuenciales síncronos
Los circuitos secuenciales síncronos solo permiten un cambio de estado en los
instantes marcados o autorizados por una señal de sincronismo de tipo oscilatorio
denominada reloj (cristal o circuito capaz de producir una serie de pulsos regulares
en el tiempo),4 lo que soluciona los problemas que tienen los circuitos asíncronos
originados por cambios de estado no uniformes dentro del sistema o circuito.

Aplicaciones
A continuación se indican ejemplos de sistemas secuenciales que pueden
encontrarse en forma de circuito integrado o como estructuras en sistemas
programados:

 Autómata finito3
 Contador
 Registros

3.4.-mapas de karnaugh
Un mapa de Karnaugh (también conocido como tabla de Karnaugh o diagrama de
Veitch, abreviado como Mapa-K o Mapa-KV) es un diagrama utilizado para la
simplificación de funciones algebraicas Booleanas. El mapa de Karnaugh fue
inventado en 1950 por Maurice Karnaugh, un físico y matemático de
los laboratorios Bell.
Los mapas de Karnaugh reducen la necesidad de hacer cálculos extensos para la
simplificación de expresiones booleanas, aprovechando la capacidad del cerebro
humano para el reconocimiento de patrones y otras formas de expresión analítica,
permitiendo así identificar y eliminar condiciones muy inmensas.
El mapa de Karnaugh consiste en una representación bidimensional de la tabla de
verdad de la función a simplificar. Puesto que la tabla de verdad de una función de
N variables posee 2N filas, el mapa K correspondiente debe poseer también
2N cuadrados. Las variables de la expresión son ordenadas en función de su peso
y siguiendo el código Gray, de manera que sólo una de las variables varía entre
celdas adyacentes. La transferencia de los términos de la tabla de verdad al mapa
de Karnaugh se realiza de forma directa, albergando un 0 ó un 1, dependiendo del
valor que toma la función en cada fila. Las tablas de Karnaugh se pueden
fácilmente realizar a mano con funciones de hasta 6 variables, para funciones de
mayor cantidad de variables es más eficiente el uso de software especializado.
Ejemplo: Dada la siguiente función algebraica Booleana representada como el
sumatorio de sus minitérminos, y con las variables Booleanas A,B,C,D, la función
se puede representar con dos notaciones distintas:

Tabla de verdad:
Utilizando los Minterm definidos, se elabora la tabla de
verdad:

Mapa de Karnaugh
Las variables de entrada pueden combinarse de 16 formas
diferentes, por lo que el mapa de Karnaugh tendrá 16 celdas,
distribuidas en una cuadrícula de 4 × 4.
La combinación de dígitos binarios en el mapa representa el
resultado de la función por cada combinación de entradas.
Por ejemplo, la celda en la esquina superior izquierda del
mapa es 0, porque el resultado de la función es ƒ = 0
cuando A = 0, B = 0, C = 0, D = 0. De igual manera, la
esquina inferior derecha es 10 porque el resultado de la
función es ƒ = 10 cuando A = 1, B = 0, C = 1, D = 0.

Una vez construido el mapa de Karnaugh, la siguiente tarea es la de seleccionar


conjunto de términos denominados subcubos de manera que se obtenga el menor
número de subcubos posible. Estos subcubos se seleccionan formando grupos de
rectángulos que encierren a los unos del mapa, las áreas deben ser potencia de 2
(ej. 1, 2, 4, 8, ...)
y se debe tratar de agrupar el mayor número de unos posible. En resumen, hay
que tomar en cuenta al hacer estos grupos de unos (subcubos) lo siguiente:

 Debemos utilizar todos los unos del mapa.


 Es mejor crear el menor número de grupos.
 Los unos pueden estar en varios grupos.
 El número de unos dentro de un grupo debe ser cualquier
potencia de 2.
 Cuanto más grande sea un grupo, la simplificación de la
función será mejor.
 No es necesario que todos los grupos tengan el mismo
tamaño.
Qué términos seleccionar va dependiendo de cómo se quiera
realizar la simplificación, puesto que esta puede realizarse
por minitérminos o por maxitérminos.

Aplicaciones.
Los diagramas de Karnaugh pueden ser utilizados en la simplificación de
sentencias definidas en lógica Booleana, construcción de estaciones de
clasificación, selección y control de calidad de piezas fabricadas, entre otras
aplicaciones

You might also like