Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Es importante relacionar esta figura con la correspondiente del sistema decimal que
se vio anteriormente: en ambos casos cada columna tiene un peso que depende de
una potencia de la base, y cada dígito debe ser combinado con el peso de su
Si aplicamos esta ecuación al número binario dado como ejemplo encontramos que
N = 207
Veamos los valores extremos que puede tener un número binario de 8 bits:
Nmin = a0 . B0 = 0
Operaciones aritméticas
Aunque aparentemente sencillo, el tema tiene sus dificultades para analizarlo
exhaustivamente. No corresponde al propósito de este curso abordar este tema con
mucho detalle, aunque brevemente se menciona:
Suma de dos números positivos: (es el caso más sencillo). Por ejemplo, si A = 20 y
B = 15, sumar A + B (en sistemas binarios de 8 bits):
20 00010100 A
+
15 00001111 B
35 00100011 A+B
El caso de sustracciones, se resuelve aplicando el complemento de dos, y
considerando como una suma de un número positivo con uno negativo. En general
los microprocesadores resuelven las operaciones aritméticas basándose siempre en
la suma, de la siguiente manera:
Resta: Suma con distinto signo
Multiplicación: Sumas sucesivas
División: Restas sucesivas
Potenciación: Multiplicaciones sucesivas
Radicación: Método aproximado
Siendo pragmáticos y desde un punto de vista estrictamente vinculado a la
Electrónica (y no a la aritmética o a la formación general), cuando debamos hacer
programas que requieran la aplicación de operaciones en binario, es fuertemente
recomendable utilizar las herramientas de cálculo que nos brinda la tecnología a
través de las modernas calculadoras, que en forma sencilla nos permiten pasar de
decimal a binario o a hexadecimal, y operar cómodamente en cualquiera de esos
sistemas, como por ejemplo la calculadora del Windows.
Un caso particular de división que puede resultar interesante de aplicar a algún
programa:
Si en un número cualquiera de 16 bits por ejemplo, se desea copiar los 10 bits
MSB a los lugares inferiores (LSB) (por algún motivo requerido por la
programación), basta con hacer la división por 64b. Veamos un ejemplo:
N = 0000000010100100 / 1000000 = 0000000010
Hacer otros ejemplos en la calculadora. Más adelante se aplicará esta propiedad.
Detección de Errores:
Los procesadores digitales tienen de todo tipo tienen la necesidad de conformar
una comunicación con otros sistemas procesadores u otros sistemas inteligentes
Según los requisitos originales del problema, la puerta C sólo se abre si el sensor
de luz A es iluminado, y el interruptor B se cierra. Esta relación se puede describir
analíticamente mediante la expresión:
C = A .B (leer: C es igual a A y B)
Esta expresión puede representarse simbólicamente como se muestra en la
siguiente figura:
(Símbolo lógico)
Una compuerta NOR o inversor es un dispositivo lógico digital con una línea de
entrada y una línea de salida que entrega una salida alta cuando su entrada es baja
y una salida baja cuando su entrada es alta.
En otras palabras, un inversor invierte, niega o complementa el nivel lógico de la
señal de entrada. Es una de las compuertas más utilizadas.
Diagramas de temporización
Para completar este breve panorama de compuertas lógicas, debemos considerar en
el análisis, el parámetro tiempo. En efecto, en los conceptos vertidos hasta el
momento acerca de las compuertas lógicas, nada decimos acerca de cuanto demora
cada operación lógica.
Y en algunas aplicaciones, sólo bastará ejecutar la operación lógica, sin importar el
tiempo que esto tome, dado que no será necesario realizar otra operación inmediata
posterior. Pero por lo general, en la realidad, esto no funciona así; cada operación
lógica puede hacerse en el orden de los 50 nanosegundos (o menos), con lo que
pueden hacerse millones de operaciones por segundo. Esto tiene importancia si
pensamos que después de cada operación las condiciones de entrada pueden
modificarse, requerir un nuevo cálculo y así sucesivamente. Mientras más rápido
actúen las compuertas, más rápido será el procesador.
Teniendo en cuenta lo anterior, nos interesa introducir aquí el concepto de
diagramas de tiempo. En éstos se muestran cómo se comporta la salida cuando
recibe en sus entradas, señales que cambian de un estado a otro con el tiempo. Lo
comprenderemos mejor si analizamos el comportamiento de las compuertas AND
y OR mediante los siguientes ejemplos.
Regla N° 1 A.0 = 0
Regla N° 2 A.1 = A
Regla N° 3 A+1=1
Regla N° 4 A+0=A
Leyes de tautología
Regla N° 5 A.A=A
Regla N° 6 A+A=A
Regla N° 7 A . = 0
Regla N° 8 A + = A
Regla N° 9 =
Leyes conmutativas:
Regla N° 10 A . B = B . A
Regla N° 11 A + B = B + A
Leyes distributivas:
Regla N° 12: Ley distributiva de la operación AND
AB + AC = A.(B+C)
Regla N° 13: Ley distributiva de la operación OR
(A + B).(A+C) = A + BC
Las reglas 12 y 13 se denominan leyes distributivas. La regla 12 opera de la misma
forma que la regla estándar de factorización del álgebra común: cuando un término
A se repite en una suma de productos, la expresión original se puede factorizar y
simplificar, convirtiéndose en un producto de sumas.
Comentario final
No hemos agotado, con lo visto, las reglas del álgebra booleana. También es cierto
que no son imprescindibles para los propósitos de nuestro curso. Lo que debe
quedar muy claro, es la diferencia que existe, por ejemplo, entre estas tres
operaciones, que haremos todas en 8 bits para que apreciemos perfectamente las
diferencias:
1) Suma aritmética binaria (no tiene nada que ver con el álgebra de Boole y es
exactamente igual que sumar números decimales, sólo cambia el sistema de
numeración)
Ejemplo: 0101 1100 + 0011 0011 = 1000 1111 ó
9210 + 5110 = 14310 ó
5C16 + 3316 = 8F16
2) Operación AND (se resuelve aplicando la lógica de Boole, aunque por su
sencillez lo podemos hacer en forma directa)
Sea A = 0101 1100; B = 0011 0011; Q = A AND B = A.B = 0001 0000
También se puede hacer, aunque no es evidente como en binario:
Q = 9210 AND 5110 = 1610
y Q = 5C16 AND 3316 = 1016
3) Operación OR (ídem 2)
Sea A = 0101 1100; B = 0011 0011; Q = A OR B = A + B = 0111 1111
Y también se puede hacer:
Q = 9210 OR 5110 = 12710
y Q = 5C16 OR 3316 = 7F16