18
CAPITULO II 2. LÓGICA BINARIA La lógica binaria se ocupa de variables que adoptan dos valores discretos y de operaciones que asumen un significado lógico. Los dos valores que pueden adoptar las variables reciben diferentes nombres. Verdadero, Falso Si, No Alto, Bajo Uno, Cero Etc. En este caso es conveniente pensar en ellos en términos de bits y asignarles los valores de 1 y de 0. A este tipo de lógica binaria que se implementa en esta práctica se le conoce como “álgebra booleanas”. En esta práctica de dará una pequeña introducción al funcionamiento y uso de las compuertas básicas de los circuitos digitales y relacionarlas con las señales binarias. 2.1 TEOREMAS Y PROPIEDADES DE LA LÓGICA BINARIA. Teorema de dualidad: a cada ley lógica le corresponde una dual construida intercambiando + con · y 1 con 0.

Lógica Binaria CAPITULO II circuitos logicos

Embed Size (px)

Citation preview

Page 1: Lógica Binaria CAPITULO II circuitos logicos

CAPITULO II2. LÓGICA BINARIA

La lógica binaria se ocupa de variables que adoptan dos valores discretos y de operaciones que asumen un significado lógico. Los dos valores que pueden adoptar las variables reciben diferentes nombres.

Verdadero, Falso Si, No Alto, Bajo Uno, Cero Etc.

En este caso es conveniente pensar en ellos en términos de bits y asignarles los valores de 1 y de 0. A este tipo de lógica binaria que se implementa en esta práctica se le conoce como “álgebra booleanas”. En esta práctica de dará una pequeña introducción al funcionamiento y uso de las compuertas básicas de los circuitos digitales y relacionarlas con las señales binarias.

2.1 TEOREMAS Y PROPIEDADES DE LA LÓGICA BINARIA.

Teorema de dualidad: a cada ley lógica le corresponde una dual construida intercambiando + con · y 1 con 0.

Ley de De Morgan generalizada: la inversa de una función se obtiene complementando todas las variables que aparecen en ella e intercambiando los operadores de adición y producto.

Teorema de la descomposición de funciones:

2.2 VARIABLES BINARIAS Y OPERACIONES

Page 2: Lógica Binaria CAPITULO II circuitos logicos

La lógica binaria consiste en variables binarias y operaciones lógicas. Las variables se designan con letras del alfabeto como A, B, C, x, y, z etc. y cada variable tiene dos posibles valores 1 ó 0.

En lógica binaria existen 3 operaciones básicas AND, OR, y NOT.

Esta operación se representa con un punto (•) o bien omitiendo el operador por ejemplo:

Estas operaciones se leen como “x AND y es igual a z” La operación lógica AND significa que z = 1 solo si x = 1 e y = 1, en cualquier otro caso z = 0 (No se olvide que x y y son variables binarias y solo pueden tener un valor de 1 ó 0). De estas condiciones se puede obtener una tabla que represente la operación AND.

Operación AND

x y z

0 0 0

0 1 0

1 0 0

1 1 1

OR Esta operación se representa con un signo más (+) por ejemplo:

Esta operación se lee como “x OR y es igual a Z” En este caso la operación que realiza se puede describir como: z = 0 si x = 0 y y = 0, en cualquier otro caso z = 1

De la misma manera es posible construir una tabla que represente la operación OR.

Operación OR

Page 3: Lógica Binaria CAPITULO II circuitos logicos

x y z

0 0 0

0 1 1

1 0 1

1 1 1

NOT: La representación de esta operación se realiza por un apostrofe (‘) y en ocasiones por una testa (‾).

Por ejemplo:

Se puede observar que esta operación solo tiene una entrada y una salida. De manera que la operación se lee como “x negada igual a z” y significa que z es lo contrario de x, Así si x = 1, entonces z = 0, y si x = 0, entonces z = 1. A esta operación se también se llama operación de complemento, ya que cambia “1” por “0” y “0” por “1”. La tabla de que represente la operación NOT es muy simple y se presenta a continuación.

Operación NOT

X z

0 1

1 0

La lógica binaria se parece a la aritmética binaria y las operaciones AND y OR tienen similitudes con la multiplicación y la suma respectivamente, De hecho, los símbolos que se utilizan para la AND y OR son los mismos que los empleados para la multiplicación y la suma. No obstante, la lógica binaria no debe de confundirse con la aritmética binaria. Debemos tener presente que una variable aritmética puede representar un número que puede constar de varios dígitos, mientras que una variable lógica solo se puede almacenar un solo dígito, es decir un “1” o un “0”. Por ejemplo:

En Aritmética Binaria tenemos 1 + 1 = 10, (uno más uno igual a dos) En lógica binaria seria 1 + 1 = 1 (uno AND uno igual a uno)

2.3 FUNCIONES LÓGICAS BINARIAS.

Page 4: Lógica Binaria CAPITULO II circuitos logicos

De forma análoga al álgebra tradicional, en el álgebra binaria se definen operadores y relaciones con los que se pueden construir funciones (relaciones), que se llaman "lógicas" o "booleanas". Por ejemplo: s = a. b+b. c;  en forma implícita: s = f(a, b, c)

Donde  s, a, b, c  son variables lógicas, S es la variable dependiente (o función). a, b y c son las variables independientes. = es una relación,  + y. Son operadores lógicos (no tienen ninguna relación con los operadores "suma" y "producto" que estamos acostumbrados a ver en aritmética).En el álgebra tradicional, para que una operación (otra manera de llamar a una función) entre dos variables esté perfectamente definida, es preciso definir el valor de la resultante (función) para todo el ámbito de existencia de las variables independientes. Del mismo modo, para definir un operador entre dos variables lógicas, es preciso definir el valor que adopta la variable dependiente para todas las posibles combinaciones de las independientes.

Puesto que en el álgebra de Boole las variables (independientes y función) solo pueden adoptar dos valores, aquí, la definición de un operador entre 2 variables a y b, exige definir el resultado (0 o 1) para las 4 (22) combinaciones de valores posibles que a y b pueden presentar. Del mismo modo, para 3 variables hay que definir 23 resultados, y en genera 2n para n variables. Estas definiciones pueden expresarse cómodamente en forma tabular.

Este tipo de representación se denomina Tabla de Verdad de la función. Consiste en una tabla con tantas columnas como variables (contando la dependiente o función), y tantas filas como resultados hay que definir (tantos como combinaciones pueden hacerse con las variables independientes) es decir, 2n, siendo n el número de variables independientes

FUNCIÓN BOOLEANA

Se denomina función lógica o booleana a aquella función matemática cuyas variables son binarias y están unidas mediante los operadores del álgebra de Boole suma lógica (+), producto lógico (·) o negación(').

MODOS DE REPRESENTACIÓN

Existen distintas formas de representar una función lógica, entre las que podemos destacar las siguientes:

Algebraica Por tabla de verdad Numérica Gráfica

El uso de una u otra, como veremos, dependerá de las necesidades concretas en cada caso.

ALGEBRAICA

Page 5: Lógica Binaria CAPITULO II circuitos logicos

Se utiliza cuando se realizan operaciones algebraicas. A continuación se ofrece un ejemplo con distintas formas en las que se puede expresar algebraicamente una misma función de tres variables.

a) F = [(A + BC’)’ + ABC]’ + AB’C b) F = A’BC’ + AB’C’ + AB’C + ABC’ c) F = (A + B + C)(A + B + C’)(A + B’ + C’)(A’ + B’ + C’) d) F = BC’ + AB’ e) F = (A + B)(B’ + C’) f) F = [(BC’)’ · (AB’)’]’ g) F = [(A + B)’ + (B’ + C’)’]’

La expresión a) puede proceder de un problema lógico planteado o del paso de unas especificaciones a lenguaje algebraico. Las formas b) y c) reciben el nombre expresiones canónicas: de suma de productos (SUM-Of.-PRODUCTS, SOP, en inglés), la b), y de productos de sumas (PRODUCT-OF-SUMS, POS, en inglés), la c); su característica principal es la aparición de cada una de las variables (A, B y C) en cada uno de los sumandos o productos. Las d) y e) son funciones simplificadas, esto es, reducidas a su mínima expresión. Las dos últimas expresiones tienen la particularidad de que exclusivamente utiliza funciones NO-Y, la f), o funciones NO-O, la g).

NUMÉRICA

La representación numérica es una forma simplificada de representar las expresiones canónicas. Si consideramos el criterio de sustituir una variable sin negar por un 1 y una negada por un 0, podremos representar el término, ya sea una suma o un producto, por un número decimal equivalente al valor binario de la combinación. Por ejemplo, los siguientes términos canónicos se representarán del siguiente modo (observe que se toma el orden de A a D como de mayor a menor peso):

AB’CD = 10112 = 1110 A’ + B + C’ + D’ = 01002 = 410

Para representar una función canónica en suma de productos utilizaremos el símbolo Σn

(sigma) y en producto de sumas Πn (pi), donde n indicará el número de variables. Así, la representación numérica correspondiente a la tabla de verdad del punto anterior quedará como:

F = Σ3 (2, 4, 5, 6) = Π3 (0, 1, 3, 7)

Matemáticamente se demuestra, que para todo término i de una función, se cumple la siguiente ecuación:

F = [Σn (i)]' = Πn (2n-1-i )

A modo de ejemplo se puede utilizar esta igualdad para obtener el producto de sumas a partir de la suma de productos del ejemplo anterior:

F = Σ3 (2, 4, 5, 6) = [Σ3 (2, 4, 5, 6)]' ' = [Σ3 (0, 1, 3, 7)]' = Π3 (0, 4, 6, 7) GRÁFICA

Page 6: Lógica Binaria CAPITULO II circuitos logicos

La representación gráfica es la que se utiliza en circuitos y esquemas electrónicos. En la siguiente figura se representan gráficamente dos funciones algebraicas, una con símbolos no normalizados, superior, y la otra con normalizados, inferior (véanse los símbolos de las puertas lógicas)

2.4 REPRESENTACIÓN DE FUNCIONES LÓGICAS CON TABLAS DE VERDAD

1 columna por variable (n columnas). 1 fila por cada combinación posible de variables (total: 2n filas). 1 columna adicional para registrar el valor de la función según cada ombinación

de variables. Total: (n+1) columnas x 2n filas La tabla de verdad de una función es única.

Ejemplo:

Page 7: Lógica Binaria CAPITULO II circuitos logicos

OBTENCIÓN DE LA TABLA DE VERDAD DE UNA FUNCIÓN DESDE UNAEXPRESIÓN ALGEBRAICA

-Cálculo a partir de las tablas de verdad de las operaciones (funciones) elementales.

Se introducen columnas adicionales para cálculos intermedios.

OBTENCIÓN DE LA EXPRESIÓN ALGEBRAICA DE UNA FUNCIÓN A PARTIR DE SU TABLA DE VERDAD: PRIMERA FORMA CANÓNICA

La fila i está asociada al minterm i:

Page 8: Lógica Binaria CAPITULO II circuitos logicos

2.5.1 MINITÉRMINOS

Para una función booleana de n variables x1,...xn, un producto booleano en el que cada una de las n variables aparece una sola vez (negada o sin negar) es llamado minitérmino. Es decir, un minitérmino es una expresión lógica de n variables consistente únicamente en el operador conjunción lógica (AND) y el operador complemento o negación (NOT).

Por ejemplo, abc, ab'c y abc' son ejemplos de minitérminos para una función booleana con las tres variables a, b y c.

INDEXANDO MINITÉRMINOS

En general, uno asigna a cada minterm (escribiendo las variables que lo componen en el mismo orden), un índice basado en el valor binario del minterm.

Un término negado, como a' es considerado como el número binario 0 y el término no negado a es considerado como un 1.

Por ejemplo:se asociaría el número 6 con abc', y nombraríamos la expresión con el nombre m6. Entonces m0 de tres variables es a'b'c' y m7 debería ser abc al ser 111(2.

Se puede observar que cada miniterminos solo devuelve verdadero, (1), con una sola entrada de las posibles.

Por ejemplo, el minitérminos 5, ab'c es verdadero solo cuado a y c son ciertos y b es falso - la entrada a = 1, b = 0, c = 1 da resultado 1.

FUNCIÓN EQUIVALENTE

Si tenemos una tabla de verdad de una función lógica: f(a,b), es posible escribir la función como "suma de productos". Por ejemplo, dada la tabla de verdad.

Observamos que las filas con resultado '1 son la primera y la cuarta, entonces podremos escribir f como la suma de los minitérminos: f(a,b) = m0 + m3.

Page 9: Lógica Binaria CAPITULO II circuitos logicos

Si queremos verificar esto:

f(a,b) = m0 + m3 = (a'b') + (ab)

Tendremos que la tabla de verdad de la función, calculándola directamente, será la misma.

Esta expresión aplicada a interruptores seria el de la figura, se puede ver que hay dos ramas, en la superior dos interruptores inversos: a’ y b’ puestos en serie, lo que es equivalente a a’b’, en la inferiores directos: a y b también en serie que es equivalente a ab, estos dos circuitos puestos en paralelo resultan a’b’ + ab.

2.5.2 MAXITERMINOS

Un maxitérminos es una expresión lógica de n variables que consiste únicamente en la disminución lógica y el operador complemento o negación. Los maxitérminos son una expresión dual de los minitérminos. En vez de usar operaciones AND utilizamos operaciones OR y procedemos de forma similar.

Por ejemplo. Los siguientes términos canónicos son maxitérminos:

DUALIZACIÓN

El complemento de un miniterminos es su respectivo maxitérminos. Esto puede ser fácilmente verificado usando la Ley de De Morgan. Por ejemplo:

m1' = M1 (a'b)' = a + b'

Page 10: Lógica Binaria CAPITULO II circuitos logicos

INDEXANDO MAXITÉRMINOS

Para indexar maxitérminos lo haremos justo de la forma contraria a la que seguimos con los miniterminos. Se asigna a cada maxitermino un índice basado en el complemento del número binario que representa (otra vez asegurándonos que las variables se escriben en el mismo orden, usualmente alfabético). Por ejemplo, para una función de tres variables f(a,b,c) podemos asignar M6 (Maxitérminos 6) al maxitermino: a' + b' + c. De forma similar M0 de tres variables debería ser a + b + c y M7 es a' + b' + c'.

Se puede ver fácilmente que un maxitérminos sólo da como resultado un cero para una única entrada de la función lógica. Por ejemplo, el maxitermino 5, a + b' + c, es falso solo cuando a y c son ciertos y b es falso - la entrada a = 1, b = 0, c = 1 da como resultado un cero.

FUNCIÓN EQUIVALENTE

Si tenemos una tabla de verdad de una función lógica, f(a,b), es posible escribir la función como "producto de sumas". Por ejemplo, dada la tabla de verdad.

Observamos que las filas que tiene como salida un 0 son la segunda y la tercera, entonces podemos escribir f como un producto de maxitérminos M1M2.

Si queremos verificar esto:

Tendremos que la tabla de verdad de la función, calculándola directamente, será la misma:

La aplicación en un circuito de interruptores, es el del esquema, donde se puede ver los dos interruptores superiores a y a', y los inferiores b' y b.

Page 11: Lógica Binaria CAPITULO II circuitos logicos

En primer lugar tenemos puestos en paralelo a y b', lo que seria a+b', y a continuación, a' y b en paralelo que seria a'+b, estos dos circuitos parciales puestos en serie son equivalentes a (a+b')(a'+b), las distintas combinaciones de a y b, corresponden, como se puede ver a la tabla de verdad.

Este circuito y el anterior son claramente diferentes, pero los dos corresponden a la misma tabla de verdad y por lo tanto equivalentes.

Aun partiendo de la misma expresión booleana, se pueden realizar distintas configuraciones equivalentes, así se puede ver en esta segunda figura.

Se puede demostrar la equivalencia, simplificando la función, partiendo de:

f(a,b) = (a + b')(a' + b)

Realizando las multiplicaciones, tendremos:

Simplificando: f(a,b) = ab + b'a'

Con lo que tenemos la función obtenida por minitérminos.

2.6 COMPUERTAS LÓGICAS BÁSICAS

Todos los circuitos lógicos digitales, desde el más simple contador hasta el más

sofisticado micro-procesador, son hechos interconectando combinaciones de simples

“bloques de construcción”, llamados compuertas lógicas (Logic gates).

Se le llama compuerta porque es un dispositivo que puede usarse para permitir o no que

el nivel que llega a un cable de entrada se repita en la salida, y lógica porque realiza una

operación lógica.

Page 12: Lógica Binaria CAPITULO II circuitos logicos

Algunas compuertas utilizadas son:

Producto lógico o multiplicador (AND): Se le conoce como producto lógico puesto que

coincide con los resultados numéricos de la multiplicación.

Suma lógica (OR): Se denomina suma lógica porque coincide en tres de los cuatro

resultados de la suma aritmética, y el resultado de 1+1, en este caso es 1.

Multiplicación invertida (NAND): Como su nombre lo dice, las salidas de esta pastilla,

son las de la compuerta AND, pero invertidos.

Suma invertida (NOR): Esta pastilla trabaja al igual que la NAND pero en vez de

compararla con la AND, la podemos comparar con la OR. Esta hace la suma y la

invierte.

Suma exclusiva (XOR): Se le conoce como suma exclusiva, las salidas son ceros

cuando las entradas son iguales y son unos cuando son diferentes.

Estas compuertas básicas, son diseñadas de acuerdo a su función como SI, NO, Y, O, o

sea, las cuatro expresiones sencillas mínimas con las cuales se puede responder a

situaciones de la vida real. Cada una de estas compuertas básicas tiene una o más

entradas, una sola salida, y una pareja de terminales para conexión a la fuente de poder

(pilas, baterías, adaptador de corriente, etc.).

Varias combinaciones de los BITS binarios 0 y 1 pueden ser aplicadas a las entradas de

una compuerta, asumiendo que un cierto voltaje bajo representa al cero y un cierto

voltaje alto equivale al BIT “uno”, esto es llamado lógica positiva; en la lógica negativa

se invierten las definiciones

La compuerta que simula la condición “SI”, tiene solamente una entrada y una salida.

Transmite a la salida el mismo estado lógico “alto” o “bajo” que haya en la entrada (BIT

1 o BIT 0), por lo cual es generalmente usada para interconexión (INTERFACE) de

circuitos lógicos no compatibles electrónicamente entre sí (diferentes impedancias, otros

voltajes o corrientes, etc.). Se les conoce a estas compuertas con el nombre de BUFFER,

por su acción reforzadora, pero es bueno aclarar que dicho término se aplica también a

otras compuertas muy diferentes, para indicar que tienen salida apta para INTERFASE.

La compuerta que simula la condición lógica “NO”, tiene la propiedad de invertir a la

salida la señal o nivel presente en la entrada. Se le utiliza también para servir de

interfase (interconexión) entre dos circuitos que estén alimentados por fuentes de voltaje

distinto. Entrega un estado bajo en su terminal de salida cuando a su única entrada llega

Page 13: Lógica Binaria CAPITULO II circuitos logicos

una señal con voltaje dentro del rango establecido como “alto”. La anterior condición lo

convierte en un BUFFER NEGADOR o simplemente compuerta NO” (NOT).

La compuerta “NO” invierte o complementa el estado lógico de su única entrada, por lo

que se le conoce también como INVERSOR. La función “NO” es generalmente

indicada por una barra o vínculo sobre el símbolo, para indicar que una entrada o una

salida ha sido invertida. Así, si A es 0 y B es 1, tendremos que A = B (con línea arriba

de la b, y algunas veces escrita como “no B”).

La compuerta que simula la condición “Y” (AND) es un circuito con capacidad para

“decidir”, con dos o más entradas. La única salida de la compuerta AND es nivel lógico

0, a menos que todas sus entradas tengan nivel lógico 1. Solamente cuando las entradas

A y B y C estén en “uno”, la salida será también “uno”.

La compuerta que simula la condición “0″ (OR) es también un circuito que hace

decisiones, con dos o más entradas. Su salida es lógica 1 cuando cualquiera o todas sus

entradas tienen un nivel lógico 1. Basta con que las entradas A o B o C estén en 1, para

que la salida pase a 1.

La electrónica moderna usa electrónica digital para realizar muchas funciones. Aunque

los circuitos electrónicos pueden resultar muy complejos, en realidad se construyen de

un número muy grande de circuitos. En un circuito digital se transmite información

binaria entre estos circuitos y se consigue un circuito complejo con la combinación de

bloques de circuitos simples (compuertas lógicas).

La mayoría de las compuertas tienen dos entradas y una salida. En cualquier momento,

cada compuerta está en una de las dos condiciones binarias (0) el cual corresponde a

falso o high (1) el cual corresponde a verdadero, representados por diferentes niveles de

voltaje.

Generalmente el estado lógico de una compuerta cambia mucho a medida que el

circuito procesa los datos. En la mayoría de las compuertas lógicas, el estado bajo es

aproximadamente cero voltios, mientras el estado alto es aproximadamente cinco

voltios positivos. Los sistemas digitales se construyen usando tres compuertas lógicas

básicas. Estas compuertas son la compuerta AND, compuerta OR y la compuerta NOT.

De estas tres compuertas lógicas se derivan otras tres: NOR, NAND y EOR.