Solo hay 10 tipos de personas en el mundo, las que saben binario y las que no.
Si no has entendido la frase, sigue leyendo.
Decimos que estamos en un mundo digital pero, ¿sabemos realmente qué significa eso? Cuando estudiamos los circuitos electrónicos analógicos, los valores de voltaje pueden tomar cualquier valor, dependiendo de los componentes que coloquemos en el circuito. Sin embargo, las señales digitales solo contemplan dos estados posibles:
- ‘0’; LOW; OFF; Falso ⇒ No hay tensión
- ‘1’; HIGH; ON; Verdadero ⇒ Hay tensión
Código binario
Nosotros disponemos de un alfabeto con 27 letras y 10 números con el que somos capaces de codificar la información para que queremos transmitir. En cambio, los sistemas digitales, como los ordenadores, tan solo disponen de dos niveles lógicos (‘0’ y ‘1’) para codificar un mensaje en lenguaje máquina.
El código ASCII se utiliza para traducir nuestros caracteres alfanuméricos en números decimales que se pueden representa. con 8 bits (más adelante explicaremos esto). En el enlace anterior podéis ver una tabla con los caracteres ASCII y su valor numérico decimal y binario.
Sistema de numeración binario
Estamos acostumbrados a utilizar el sistema de numeración decimal (base 10) para representar cifras, pero también podemos, y así lo haremos, representarlos con el sistema de numeración binario (base 2). Para entenderlo mejor, veamos un ejemplo:
El número 356 en sistema decimal representa:
6 · 10 ^0 = 6 donde 0 es la posición que ocupa
+
5 ·10^1 = 50
+
3·10^2 = 300
______________
356
Para obtener el equivalente decimal de un número ‘binario’ o ‘en base 2’ seguimos el mismo proceso. Por ejemplo 1011, en decimal sería:
1 ·2^0 = 1
+ 1·2^1 = 2
+ 0·2^2 = 0
+ 1·2^3 = 8
____________
11
Para convertir de decimal a binario, seguiremos el siguiente proceso:
Funciones lógicas
Pensemos ahora en un sistema que responda a la lógica binaria, es decir, que solo pueda tener dos estados:
- ¿Se ha pulsado un botón? 0 o 1, sí o no.
- ¿El sensor de luminosidad está detectando oscuridad? 0 o 1, sí o no
- ¿La temperatura es mayor de 15ºC? 0 o 1, sí o no.
Dependiendo de estos valores, nuestro sistema actuará de una forma u otra:
- Botón pulsado ⇒ Activa un motor
- Hay oscuridad ⇒ Enciende la luz
- Temperatura < 15ºc ⇒ Enciende la calefacción
Nuestro sistema digital actuará de acuerdo a una determinada función lógica. Hay varias funciones fundamentales que podremos combinar para crear nuestra función digital.
- La puerta OR nos da un ‘1’ a la salida si al menos hay un ‘1’ en alguna entrada.
- La puerta AND da ‘1’ a la salida si ambas entradas valen ‘1’.
- La puerta NOT invierte el valor de su única entrada.
- La puerta NOR, combina una NOT con una OR.
- La puerta NAND, combina una NOT con una AND.
En las siguientes tablas, A y B representan la entrada del sistema y F, la salida. A la izquierda de la tabla, se muestra su símbolo.
resolución de problemas con puertas lógicas
Para resolver problemas, seguiremos los siguientes pasos:
- Definir las entradas y las salidas
- Construir la tabla de verdad del sistema, rellenando la columna de salida de acuerdo a las condiciones del problema.
- A partir de la tabla de verdad, extraemos la función lógica como veremos en clase.
- Implementar el circuito con puertas lógicas.
Ejercicio
Diseña un circuito que permita decidir si se ve o no la televisión en una casa. El circuito tiene tres pulsadores, uno para la madre, otro para el padre y uno más para el hijo. Las condiciones que debe cumplir el circuito son:
- La decisión la toman los padres.
- Si los padres no se ponen de acuerdo, la decisión la toma el hijo.