¿Por qué no hicieron que las computadoras entendieran todos los números decimales, no solo dos?
¡Por la misma razón, ‘ellos’ no te hicieron entender todos los idiomas naturales y no solo el inglés!
Pero en el centro de la pregunta hay una creencia errónea de que las computadoras entienden dos números, presumiblemente [matemáticas] 0 [/ matemáticas] y [matemáticas] 1 [/ matemáticas]. Ellos no. Las computadoras digitales son máquinas sofisticadas que hacen uso de dos estados, generalmente electrónicos, que pueden etiquetarse de varias maneras, incluyendo:
- Encendido apagado
- Alta baja
- Verdadero Falso
- [matemáticas] 0/1 [/ matemáticas]
El aspecto más importante de estos estados es que son diferentes. Los estados en sí no son números, incluso si se mencionan o etiquetan con los dígitos [matemática] 0 [/ matemática] y [matemática] 1 [/ matemática].
El “binario” en “computadora binaria” es una referencia al uso de dos estados distintos. Está relacionado con el “binario” en “número binario”, pero no es lo mismo. Un número binario es un número representado en notación posicional con base (o radix) dos, así como un número decimal familiar es un número representado en notación posicional con base diez. Por lo tanto, el número trece tiene muchas representaciones que incluyen:
- Binario [matemáticas] 1101 = 2 ^ 3 + 2 ^ 2 + 2 ^ 0 = 8 + 4 + 1 [/ matemáticas]
- Decimal [matemática] 13 = \ text {diez} +3 [/ matemática]
Los estados en las computadoras se pueden usar para representar muchas cosas diferentes, incluyendo:
- Números
- Letras
- Píxeles
- Instrucciones de la computadora
Un estado individual se conoce como bit, un acrónimo de dígitos binarios, pero las secuencias de bits casi nunca se interpretan como notación posicional binaria para números. En cambio, las computadoras representan números enteros como secuencias de bits de una manera que facilita las operaciones de la computadora, generalmente el complemento de Dos, pero el complemento de Uno es posible, se ha utilizado Decimal codificado en binario, y el diseñador de la computadora es libre de inventar cualquier codificación que desee números. Los números no enteros generalmente tienen una representación completamente diferente en bits, a menudo como punto flotante estandarizado en estos días bajo IEEE 754.
Del mismo modo, hay diferentes formas de interpretar secuencias de bits como letras (por ejemplo, ASCII, EBCDIC o Unicode), píxeles (por ejemplo, JPEG, GIF o TIFF) o varios códigos de máquina.
La conclusión es que una secuencia de bits no significa nada hasta que es interpretada por el programa de computadora. Lo que nos lleva de vuelta al punto original. Una secuencia de letras como palabras, oraciones y párrafos no significa nada hasta que sea interpretada por alguien que sepa el idioma en que se escribe la secuencia.
‘Ellos’ probablemente lo entrenaron para reconocer varios glifos que representan las 26 letras y varios símbolos utilizados en inglés. A pesar de esta ventaja sobre las computadoras que reconocen solo dos estados, ‘ellos’ aún no lograron hacerte entender todos los idiomas que usan esos glifos, y mucho menos esos otros lenguajes naturales ‘extraños’ que usan otros conjuntos de caracteres.
Sin embargo, lo mejor de las computadoras es que son (bastante cercanas) a las Máquinas Turing universales: puede programarlas para interpretar prácticamente cualquier cosa, incluidas, con toda probabilidad, cosas como los lenguajes naturales. Ciertamente, pueden “comprender” todas las representaciones decimales de los números y manipular esas representaciones mucho más rápido que usted o yo [math] _ {\ ddot \ smallsmile} [/ math]