1
Es un conjunto de Reglas y acuerdos que
permiten la Representación de todos los números, a Partir de un conjunto
limitado de Símbolos.
Estas reglas son diferentes, para cada
sistema de numeración considerado, pero una regla común a todos es que para
construir números válidos en un sistema de numeración determinado sólo se
pueden utilizar los símbolos permitidos en ese sistema.
Ø Clasificación
Los sistemas de numeración pueden
clasificarse en dos grandes grupos: posicionales y no-posicionales:
En los sistemas no-posicionales los
dígitos tienen el valor del símbolo utilizado, que no depende de la posición
(columna) que ocupan en el número.
En los sistemas de numeración ponderados o
posicionales el valor de un dígito depende tanto del símbolo utilizado, como de
la posición que ese símbolo ocupa en el número.
Ø Niveles lógicos:
Son los nombres dados a los voltajes
usados para representar un 1 o un 0. En la práctica alto puede ser cualquier
voltaje entre un mínimo y máximo especificado, de la misma manera bajo puede
ser cualquier voltaje ente un mínimo y un máximo especificado.
Ø Forma de las ondas digitales
Consiste en los niveles de voltaje que
cambian ente alto y bajo, o bajo y alto. Una onda digital está formada por
series de pulsos.
Ø Diagramas de sincronización.
Los diagramas de actividades representan
las sincronizaciones entre flujos de control por medio de barras de
sincronización.
Una barra de sincronización permite abrir
y cerrar ramas paralelas dentro de un flujo de ejecución de un método o de un
caso de uso.
Ø Transferencia de datos
Es la transferencia física de datos (un
flujo digital de bits) por un canal de comunicación punto a punto o punto a
multipunto. Ejemplos de estos canales son cables de par trenzado, fibra óptica,
los canales de comunicación inalámbrica y medios de almacenamiento. Los datos
se representan como una señal electromagnética, una señal de tensión eléctrica,
ondas radioeléctricas, microondas o infrarrojos.
Ø Sistema digital
Es un conjunto de dispositivos que son
destinados a la generación, transmisión, manejo, procesamiento y almacenamiento
de señales digitales. También, y a diferencia de un sistema analógico, un
sistema digital es una combinación de dispositivos diseñados.
Ø Los números binarios
En ciencias de la computación, es un
sistema de numeración en el que los números se representan utilizando solamente
dos cifras: cero y uno (0 y 1). Es uno de los sistemas que se utilizan en las
computadoras, debido a que estas trabajan internamente con dos niveles de
voltaje, por lo cual su sistema de numeración natural es el sistema binario.
Ø Conversor de ingeniería numérica
Es la transformación del valor numérico de
una magnitud física, expresado en una cierta unidad de medida, en otro valor
numérico equivalente y expresado en otra unidad de medida de la misma
naturaleza.
Este proceso suele realizarse con el uso
de los factores de conversión y/o las tablas de conversión de unidades.
Frecuentemente basta multiplicar por una
fracción (factor de una conversión) y el resultado es otra medida equivalente,
en la que han cambiado las unidades. Cuando el cambio de unidades implica la
transformación de varias unidades, se pueden utilizar varios factores de
conversión uno tras otro, de forma que el resultado final será la medida
equivalente en las unidades que buscamos.
Ø Suma de números Binarios
Las
posibles combinaciones al sumar dos bits son
- 0
+ 0 = 0
- 0
+ 1 = 1
- 1
+ 0 = 1
- 1
+ 1 = 10
100110101
+ 11010101
———————————
1000001010
Operamos
como en el sistema decimal: comenzamos a sumar desde la derecha, en nuestro
ejemplo, 1 + 1 = 10, entonces escribimos 0 en la fila del resultado y llevamos 1
(este "1" se llama arrastre). A continuación se
suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta
terminar todas la columnas (exactamente como en decimal).
Ø Resta de números binarios
El
algoritmo de la resta en binario es el mismo que en el sistema decimal. Pero
conviene repasar la operación de restar en decimal para comprender la operación
binaria, que es más sencilla. Los términos que intervienen en la resta se
llaman minuendo, sustraendo y diferencia.
Las
restas básicas 0-0, 1-0 y 1-1 son evidentes:
- 0
- 0 = 0
- 1
- 0 = 1
- 1
- 1 = 0
- 0
- 1 = no cabe o se pide prestado al próximo.
La
resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad
prestada de la posición siguiente: 10 - 1 = 1 y me llevo 1, lo que equivale a
decir en decimal, 2 - 1 = 1. Esa unidad prestada debe devolverse, sumándola, a
la posición siguiente. Veamos algunos ejemplos:
Restamos 17 - 10 = 7 (2=345) Restamos 217 - 171 = 46 (3=690)
10001 11011001
-01010 -10101011
—————— —————————
01111 00101110
A
pesar de lo sencillo que es el procedimiento, es fácil confundirse. Tenemos
interiorizado el sistema decimal y hemos aprendido a restar mecánicamente, sin
detenernos a pensar en el significado del arrastre. Para simplificar las restas
y reducir la posibilidad de cometer errores hay varias soluciones:
- Dividir
los números largos en grupos. En el siguiente ejemplo, vemos cómo se
divide una resta larga en tres restas cortas:
100110011101 1001 1001 1101
-010101110010 -0101 -0111 -0010
————————————— = ————— ————— —————
010000101011 0100 0010 1011
- Utilizando
el complemento
a dos.
La resta de dos números binarios puede obtenerse sumando al minuendo el
complemento a dos del sustraendo. Veamos algunos ejemplos. Hagamos la
siguiente resta, 91 - 46 = 45, en binario:
1011011 1011011
-0101110 C2 de 46 = 1010010 +1010010
———————— ————————
0101101 10101101
En el
resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el
número resultante no puede ser más largo que el minuendo, el bit sobrante se
desprecia.
Un
último ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el
complemento a dos:
11011011 11011011
-00010111 C2 de 23 = 11101001 +11101001
————————— —————————
11000100 111000100
Y,
despreciando el bit que se desborda por la izquierda, llegamos al resultado
correcto: 11000100 en binario, 196 en decimal.
- Utilizando
el complemento a 1. La resta de dos números binarios puede obtenerse
sumando al minuendo el complemento a uno del sustraendo y a su vez sumarle
el bit de overflow (bit que se desborda).
2- Compuertas o puertas lógicas.
Ø Puerta NOT
En lógica
digital, un inversor, puerta NOT o compuerta NOT es una puerta lógica que
implementa la negación lógica. A la derecha se muestra la tabla de verdad.
Siempre que su entrada está en 0 (cero) o en BAJA, su salida está en 1 o en
ALTA, mientras que cuando su entrada está en 1 o en ALTA, su SALIDA va a estar
en 0 o en BAJA.
La función
física del inversor, es la de cambiar en su salida el nivel del voltaje de su
entrada entre los definidos como lógico ALTO Y lógico BAJO.
Ø Tabla de Verdad
Las tablas
de verdad es una estrategia de la lógica simple que permite establecer la
validez de varias propuestas en cuanto a cualquier situación, es decir,
determina las condiciones necesarias para que sea verdadero un enunciado
propuesto, permitiendo clasificarlos en tautológicos (resultan verdaderos
durante cualquier situación) contradictorias (son enunciados falsos en la
mayoría de los casos) o contingentes (enunciados que no pueden será tantos
verdaderos como falsos no existen tendencia a un solo sentido).
Permite
diferentes aspectos del enunciado como las condiciones que lo hacen verdadero y
cuáles son sus conclusiones lógicas, es decir, si el enunciado propuesto es
verdadero o falso. Esta tabla fue ideada por Charles Sander Peirce
aproximadamente en 1880, pero la más utilizada es el modelo actualizado de
Luidwin Wittgenstein en 1921.
Ø Puerta AND
La puerta
AND o compuerta AND es una puerta lógica digital que implementa la conjunción
lógica, se comporta de acuerdo a la tabla de verdad mostrada a la derecha; esta
tendrá una salida ALTA (1), únicamente cuando los valores de ambas entradas
sean ALTOS. Si alguna de estas entradas no son ALTAS, entonces tendrá un valor
de salida BAJA (0). Desde el punto de vista funcional, la puerta AND es un
multiplicador pues su salida es el producto de sus entradas.
Adicionalmente,
encuentra el mínimo entre dos dígitos binarios, así como la puerta OR encuentra
el máximo. La puerta AND puede usarse como inhibidor. Los datos que llegan a
una de las entradas (A) se transmiten a la salida (C) mientras la otra entrada
(B) reciba 1 (VDD) si esta entrada es 0 (GND) la salida en (C) es 0
independientemente de la señal en (A). Para que el bit inhibidor (b) se active
con 1 (VDD) en lugar de con 0, sería necesario añadir una puerta NOT en dicha
entrada.
Ø Compuerta OR
Compuerta
OR, puerta lógica digital que implementa la disyunción lógica. Se utiliza para
conectar dos o más variables, y basta con que una de las variables se cumpla
para que toda la función sea verdadera. El operador se representa por el
símbolo " + " el cual se lee "o". Expresándolo en otras
palabras: En una compuerta OR, la salida será "1", cuando en
cualquiera de sus entradas haya un "1".
Ø Puerta NAND
Es una
puerta lógica que produce una salida falsa solamente si todas sus entradas son
verdaderas; por tanto, su salida es complemento a la de la puerta AND, -se
comporta de acuerdo a la tabla de verdad mostrada a la derecha-. Cuando todas
sus entradas están en 1 (uno) o en ALTA, su salida está en 0 o en BAJA,
mientras que cuando al menos una sola de sus entradas o ambas está en 0 o en
BAJA, su SALIDA va a estar en 1 o en ALTA.
Se puede
ver claramente que la salida X solamente es "0" (0 lógico, nivel
bajo) cuando tanto la entrada A como la entrada B están en "1". En
otras palabras, la salida X es igual a 0 cuando la entrada A y la entrada B son
1.
Ø Puerta NOR
La puerta
NOR o compuerta NOR es una puerta lógica digital que implementa la disyunción
lógica negada, se comporta de acuerdo a la tabla de verdad mostrada a la
derecha. Cuando todas sus entradas están en 0 (cero) o en BAJA, su salida está
en 1 o en ALTA, mientras que cuando una sola de sus entradas o ambas están en 1
o en ALTA, su SALIDA va a estar en 0 o en BAJA. NOR es el resultado de la
negación del operador OR. También puede ser visto como una puerta AND con todas
las entradas invertidas. El NOR es una operación completamente funcional. Las
puertas NOR se pueden combinar para generar cualquier otra función lógica. En
cambio, el operador OR es monótono, ya que solo se puede cambiar BAJA a ALTA,
pero no viceversa.
Ø Puerta XNOR
Es una
puerta lógica digital cuya función es la inversa de la puerta OR exclusiva
(XOR). La versión de dos entradas implementa la igualdad lógica, comportándose
de acuerdo a la tabla de verdad de la derecha. Una salida ALTA (1) resulta si
ambas las entradas a la puerta son las mismas. Si una pero no ambas entradas
son altas (1), resulta una salida BAJA (0).
Ø Compuerta YES
La
compuerta lógica más simple es la compuerta "YES", puesto que la
condición lógica de la entrada será la misma en la salida.
Se utiliza
como aislante entre secciones o "BUFFER"
Su utilidad
se incrementa cuando cuenta con un control que activa y desactiva su salida,
formando un BUS de datos, que veremos más adelante.
Símbolo
de la compuerta "YES":
Ø Familias lógicas de circuitos integrados
Una familia
lógica es el conjunto de circuitos integrados (CI’s) los cuales pueden ser
interconectados entre sí sin ningún tipo de Interfase o aditamento, es decir,
una salida de un CI puede conectarse directamente a la entrada de otro CI de
una misma familia. Se dice entonces que son compatibles.
Las
familias pueden clasificarse en bipolares y MOS. Podemos mencionar algunos
ejemplos. Familias bipolares: RTL, DTL, TTL, ECL, HTL, IIL. Familias MOS: PMOS,
NMOS, CMOS. Las tecnologías TTL (lógica transistor- transistor) y CMOS (metal
oxido-semiconductor complementario) son los más utilizadas en la fabricación de
CI’s SSI (baja escala de integración) y MSI (media escala de integración).
3- Algebra booleana
El álgebra
de Boole, también llamada álgebra booleana, en electrónica digital, informática
y matemática es una estructura algebraica que esquematiza las operaciones
lógicas.
El álgebra
booleana es un sistema matemático deductivo centrado en los valores cero y uno
(falso y verdadero). Un operador binario " º " definido en éste juego
de valores acepta un par de entradas y produce un solo valor booleano, por
ejemplo, el operador booleano AND acepta dos entradas booleanas y produce una sola
salida booleana.
Para
cualquier sistema algebraico existen una serie de postulados iniciales, de aquí
se pueden deducir reglas adicionales, teoremas y otras propiedades del sistema,
el álgebra booleana a menudo emplea los siguientes postulados:
Cerrado. El
sistema booleano se considera cerrado con respecto a un operador binario si
para cada par de valores booleanos se produce un solo resultado booleano.
Conmutativo.
Se dice que un operador binario " º " es conmutativo si A º B = B º A
para todos los posibles valores de A y B.
Asociativo.
Se dice que un operador binario " º " es asociativo si (A º B) º C =
A º (B º C) para todos los valores booleanos A, B, y C.
Distributivo.
Dos operadores binarios " º " y " % " son distributivos si
A º (B % C) = (A º B) % (A º C) para todos los valores booleanos A, B, y C.
Identidad.
Un valor booleano I se dice que es un elemento de identidad con respecto a un
operador binario " º " si A º I = A.
Inverso. Un
valor booleano I es un elemento inverso con respecto a un operador booleano
" º " si A º I = B, y B es diferente de A, es decir, B es el valor
opuesto de A.
Ø Simplificaciones lógicas
En lógica
proposicional, la simplificación123 (equivale a la sustitución de una
conjunción por uno de sus componentes) es una inferencia inmediata válida,
forma de argumento y regla de inferencia que hace que la inferencia de que, si
la conjunción A y B es cierta, entonces A es verdad (o bien "B también es
verdad", otra conclusión). La regla permite acortar las pruebas más largas
mediante la derivación de una de las conjunciones de una conjunción en una
línea por sí misma.
Un ejemplo en español:
Llueve y
llueve a cántaros.
Por lo
tanto, está lloviendo.
La regla se puede expresar el lenguaje formal como:
Ø Operaciones booleanas
Proceso de
creación de un objeto creado mediante la combinación de dos a través de una
operación matemática. Los dos objetos se puede restar, unirse o intersectarse
para formar el nuevo objeto. En el ambiente CAD es una técnica utilizada en 3D
(planos, superficies o solidos) para obtener volúmenes desde la suma, resta o
intersección de otros volúmenes. En los programa normalmente estas operaciones
aparecen con nombres como Unión, Diferencia, Intersección.
Ø Expresión booleana
Una
expresión booleana es una expresión algebraica que da lugar a uno de dos
posibles valores, 1 ("verdadero") o 0 ("falso"), conocidos
como valores booleanos. La lógica booleana forma la base de los cálculos
binarios modernos, o en base dos, de los sistemas informáticos. Puedes utilizar
un sistema de expresiones booleanas para representar cualquier circuito
electrónico de computadora.
Ø Reglas para el álgebra booleana
Son
12 reglas básicas útiles para manipular y simplificar expresiones booleanas las
cuales se verán a continuación.
A+0=A
A+1=1
A·0=0
A·1=1
A+A=A
A+A'=1
A·A=A
A·A'=0
A''=A
A+AB=A
A+A'B=A+B
(A+B)(A+C)=A+BC
Regla 1: A+0=A
Esta
regla puede entenderse observando que pasa cuando una entrada a una compuerta
OR es siempre 0 y la otra entrada, A, puede tomar el valor de 1 o 0. Si A es
un, la salida de 1, que es igual a A. Si A es un 0, la salida es un 0, que
también es igual a A. Por tanto, se sigue que una variable disyuntiva con un 0
es igual a la variable (A+0=A).
Regla # 2: A+1=1
En
esta regla se muestra cundo una entrada a una compuerta OR es siempre uno y la
otra entrada, A, toma un valor de 0 o 1. Un 1 en una entrada a una compuerta OR
produce un 1 en la salida no importa el valor de la otra entrada. Por lo tanto,
una variable disyuntivada con 1 es siempre igual a 1 (A+1=1).
Regla # 3: A.0=0
La regla 3
se demuestra cuando un 0 es conjuntivado con una variable. Por supuesto, toda
vez una entrada a una compuerta AND es 0, la salida es cero, no importa el
valor de la variable de otra entrada. Una variable conjuntivada con un 0
produce un 0 (A.0=0).
Regla # 4: A.1=A
Para
comprobar la regla 4, conjunto una variable con un 1. Si la variable A es 0,la
salida de la compuerta AND es 0. Si la variable A es un 1 la salida de la
compuerta NAD es un 1 ya que ambas entradas ahora son 1, por lo tanto, la
conjunción de una variable y un1 es igual al valor de la variable (A.1=1).
Regla # 5:
A+A=A
Si una
variable se disyunta consigo misma la salida es igual a la variable. Si A es 0
entontes 0+0=0, y si A es 1, entonces 1+1=1.
Regla # 6:
A+A'=1
Esta regla
puede explicarse con lo siguiente: si una variable y su complemento es
disyuntivito, el resulta es siempre 1. Si A es 0, entonces 0 + 0'= 0 + 1 = 1.
Si A es 1, entonces 1 + 1' = 1+ 0 = 1.
Regla # 7: A.A=A
Si se
conjunta una variable consigo misma, el resultado es igual a la variable. Por
ejemplo si A es igual a 0, entonces 0.0=0, y si A es igual a 1, entonces 1.1=1.
Por cada caso, la salida de una compuerta AND es igual la variable de entrada
A.
Regla # 8: A.A'=0
Si una
variable se conjunta con su complemento el resultado es 0. Esto es fácil de
entender, ya que alguna de las variables, A o A', debe ser siempre 0, y cuando
un 0 se aplica a la entrada de un compuerta AND, asegura que la salida será
también 0.
Regla#9: A''=A
Esta regla
puede entenderse observando que pasa cuando una entrada a una compuerta OR es
siempre 0 y la otra entrada, A, puede tomar el valor de 1 o 0. Si A es un, la
salida de 1, que es igual a A. Si A es un 0, la salida es un 0, que también es
igual a A. Por tanto, se sigue que una variable disyuntiva con un 0 es igual a
la variable (A+0=A).
Regla#10:
A+AB=A+B
Esta regla
se demuestra usando la ley distributiva, la regla 2 y la regla 4 como
siguiente: A+AB= A(1+B) =A·1 =A
Ø Teorema de Morgan
El Teorema
de Morgan permite transformar funciones producto en funciones suma y viceversa.
Su principal aplicación práctica es realizar circuitos digitales utilizando un
solo tipo de compuerta. También es muy utilizado en el álgebra booleana para
obtener el complemento de una expresión o una función, además para simplificar
expresiones y funciones booleanas.
El teorema
de Morgan es una herramienta muy útil para desarrollar circuitos digitales, ya
que permite obtener la función de una compuerta lógica con la combinación de
otras compuertas lógicas, por ejemplo se puede realizar la función de la
compuerta NAND con una compuerta OR y dos compuertas inversoras, y se puede
obtener la función de una compuerta NOR con una compuerta AND y dos compuertas
inversoras.
Ø Simplificación utilizando el Algebra de
BOOLE
Al aplicar
el álgebra booleana, hay que reducir una expresión a su forma más simple o
cambiarla a una forma más conveniente para conseguir una implementó más
eficiente. Para este proceso utilizaremos las reglas, leyes y teoremas del
álgebra de Boole para manipular y simplificar una expresión.
Una
expresión booleana simplificada emplea el menor número posible de puertas en la
implementan de una determinada expresión, para esto veamos el siguiente
ejemplo:
AB + A(B+C)
+ B(B+C)
Solución:
Paso 1:
Aplicar la ley distributiva al segundo y tercer termino
AB + AB +
AC + BB + BC
Paso 2:
Aplicar regla 7 (BB = B) al cuarto termino
AB + AB +
AC + B + BC
Paso 3:
Aplicar regla 5 (AB + AB = AB) a los dos
primeros términos
AB + AC + B
+ BC
Paso 4:
Aplicar regla 10 (B + BC = B) a los dos
últimos términos
AB + AC + B
Paso 5:
Aplicar regla 10 (AB + B = B) al primer
y tercer termino
B + AC
En las
siguientes figuras podremos observar el método de simplificación del ejemplo
anterior, el cual reduce significativamente el número de puertas lógicas
necesarias para implementar la expresión.
Se puede
ver que son necesarias cinco puertas para implementar dicha expresión en su
forma original, mientras que solo requieren dos para hacerlo una vez
simplificada.
Es
importante resaltar que estos dos circuitos de puertas son equivalentes, es
decir, para cualquier combinación de valores A, B y C obtendremos siempre la
misma salida en ambos circuitos.
Ø Formas estándares de las expresiones
booleanas
Al igual
que en la lógica proposicional y la lógica de predicados, el álgebra de Boole utiliza
formas estándares.
La
disyunción de conjunciones es igual a la suma de productos y la conjunción de
disyunciones es el producto de sumas. Estas formas facilitan el manejo de
expresiones lógicas complicadas.
Ø Construcción de tablas de verdad
Para
determinar el valor de verdad de una proposición compuesta es necesario
elaborar la correspondiente tabla de verdad; para tal fin y mediante el
siguiente ejemplo se enuncian los pasos a seguir:
Ejemplo 1.
Construir la tabla de verdad
para la proposición ~ (p^q).
Paso 1.
Se hace un recorrido de
izquierda a derecha teniendo en cuenta los paréntesis.
Paso 2.
Se identifica el conectivo
que aparece dentro del paréntesis, en este ejemplo la conjunción.
Paso 3.
Se precisa el término de
enlace que precede al paréntesis, en el ejemplo la negación.
Paso 4.
Se elabora la tabla con el
número de columnas determinado por:
_ Proposiciones que
intervienen
_ Conectivos utilizados
dentro del paréntesis
_ Conectivo utilizado fuera
del paréntesis.
La siguiente tabla ilustra
el paso 4:
Paso 5.
Se fijan los valores de
verdad en las columnas de las proposiciones p y q. se ilustra en la siguiente
tabla.
Paso 6.
Se completa la tabla por
columnas, teniendo en cuenta el conectivo y el valor de verdad de cada
proposición simple. La finalización de la elaboración de la tabla de verdad es:
9 – Minimización en el nivel de compuertas
Ø
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 1953 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.