Es Todos los 1s y 0s: Cómo los Ordenadores Mapa Físico del Mundo
El número «12» no es el valor 12 en un cartón de huevos. La palabra «roca» no es la roca que encuentras afuera. En cambio, son meros símbolos, creados a partir de una colección de otros símbolos, que representan conceptos específicos que se corresponden bien con el mundo que nos rodea. Son herramientas que nos dan la capacidad de descomponer el mundo, una masa de materia, en trozos manejables. Las usamos, no porque sean objetivamente «verdaderas», sino porque son útiles para alcanzar nuestras metas, dado un conjunto de restricciones físicas.
En esencia, el uso de binarios en computadoras no es más complicado que eso. Solo otro sistema creado por el hombre para lograr algún objetivo con un cierto conjunto de restricciones en mente.
Antes de pensar en cómo las computadoras usan el sistema binario, es útil pensar en por qué usamos el sistema denario. Nuestro objetivo es ser capaces de representar valores numéricos y comunicar esos valores a los demás. Podemos imaginar un sistema en el que tuviéramos un nuevo personaje para cada número imaginable. Por ejemplo, 156 sería en realidad un tipo de línea ondulada con un gancho en la parte superior, que no debe confundirse con el símbolo de 38, que estaría representado por un círculo con una línea en la parte superior. Esa sería la forma más eficiente de representar valores, ya que solo necesitaría un carácter a la vez para representar incluso los números más grandes, en lugar de una cadena de caracteres. Pero no sería lo más práctico. Imagine a una maestra de 1er grado probando a sus estudiantes sobre la diferencia entre el personaje que representa a 1,589 y el personaje que representa a 2,000,478 y todos los personajes intermedios.
Claramente, hay un límite a la cantidad de caracteres que queremos tener disponibles en nuestro sistema de representación. Entonces, ¿qué pasa con el extremo opuesto del espectro: un sistema de conteo con un solo carácter disponible? Claro, eso es posible, ahora muéstrame 2.000.478 usando un sistema base – 1. Evidentemente, esto tampoco es práctico.
De repente, el sistema base-10 tiene sentido no como el único sistema numérico disponible, sino como un buen ajuste dada nuestra necesidad de practicidad, elegancia y eficiencia. Con solo 10 caracteres disponibles, puedo representar el número 2,000,478 fácilmente multiplicando el valor numérico de esa columna por la siguiente potencia de 10, como se muestra a continuación:
- 2 x 10== 2,000,000
- 0 x 10== 0
- 0 x 10 li = 0
- 0 x 103 = 0
- 4 x 102 = 400
- 7 x 101 = 70
- 8 x 10 = = 8
SUM = 2,000,478
Qué gran sistema de representación de valores. Entonces, ¿por qué las computadoras no usan ese sistema?
De Denary a Binario
las corrientes Eléctricas de cualquier ejecución (abierto/on) o no (cerrada/off) lo que significa que tienen dos valor caracteres disponibles para nosotros: 1 y 0. Dadas esas restricciones, podemos usar el mismo método que usamos para elegir el sistema base-10 para encontrar un sistema de representación que los ordenadores puedan usar.Con solo dos estados disponibles para representar caracteres diferentes, la única alternativa al binario sería un sistema de conteo. Pero para representar el valor 255 en un sistema de conteo necesitaríamos 255 dígitos. Eso es 255 transistores «on» para representar un número relativamente pequeño. Binario solo necesita 8 para lograr el mismo objetivo.
Así es como binario hace eso.
Un sistema base 2 funciona de manera similar al sistema base-10, pero en lugar de multiplicar el valor de cada columna por el siguiente múltiplo de 2, se multiplican por el siguiente múltiplo de 2. Por ejemplo, el número binario 10100 se puede traducir a un número base 10 simplemente agregando los valores calculados a continuación:
- 1 x 2 = = 16
- 0 x 23 = 0
- 1 x 22 = 4
- 0 x 21 = 0
- 0 x 2 = = 0
De Bits a Bytes
Desde aquí, podemos empezar a construir una convención sobre cómo usar este sistema numérico para mapear el mundo que nos rodea en pulsos eléctricos de encendido y apagado. Primero, pongamos un nombre a nuestros caracteres: Dígitos binarios o Bits para abreviar, la unidad más pequeña de datos en una computadora.
A continuación determinaremos cuántos bits se necesitarán para representar un valor no numérico, como una letra o un carácter especial. Este proceso es tan artificial como el proceso de elegir un sistema numérico para representar el valor. Tenemos ciertos objetivos, ciertas herramientas preestablecidas y un deseo general de elegancia y eficiencia. Hay 101 caracteres en un teclado, lo que significa que necesitaremos representar 101 en binario como el valor máximo. Resulta que 101 en base-10 es el número 01100101 en binario. Es un requisito de referencia de 7 transistores disponibles si queremos asignar cada clave a un valor numérico específico. Pero, ¿y si hay otros personajes que queremos representar? Con 7, todo activado, solo representamos hasta el número 127 en base-10. Bien podría darnos un poco más para trabajar.
Y por lo tanto, tenemos bytes, la unidad de referencia para medir datos, que se dice que representa como mínimo un solo carácter. Ahora podemos representar los valores de 0-255 (00000000-1111111).
Como las computadoras solo pueden entender números, se estableció el Código Estándar Americano para el Intercambio de Información (ASCII) para asignar a cada carácter en el teclado un valor numérico específico como se muestra a continuación: