¿Cómo escribo “binario” en binario?

Post anteriores: La computadora, los unos y los ceros..., ¿Cuántas clases de personas hay?

Llegamos tarde pero seguro… Realmente demoré en terminar este primer trío de post para comprender las ideas básicas del “por qué las compus utilizan unos y ceros“. En el anterior post había explicado brevemente cómo cada número en sistema decimal tiene su correspondiente número en sistema binario; lo cual no era tan complejo de comprender. El paso que sigue es preguntarse cómo representar con unos y ceros una letra o una palabra. Ya parece un poco más complejo y, de alguna forma, así lo es. De hecho, para resolver este problema, no alcanza la matemática sino más bien empiezan a jugar un rol fundamental los estándares.

La solución al problema de la representación de letras (y todo tipo de caracteres no numéricos) es la definición de un (o más de uno) estándar en donde a cada caracter se le asigna un número (en decimal digamos) correspondiente. De esta forma matemáticamente no hay un problema; ya sabemos convertir un número decimal en binario. Veamos un ejemplo simple y tonto que a mí me encantan. Yo tengo los números decimales 0, 1, 2 y 3. Puedo armar la tabla con los correspondientes números en binario:

0 - 00

1 - 01

2 - 10

3 - 11

Puedo ahora, agregar a cada valor un caracter que representaré con ese valor, como por ejemplo:

0 - 00 - a

1 - 01 - b

2 - 10 - c

3 - 11 - e

De esta forma, yo puedo representar palabras simples “uniendo” el valor de cada caracter y mostrandolo en binario, por ejemplo:

bebe - 1313 - 01110111

beba - 1310 - 01110100

beca - 1320 - 01111000

Creo que la explicación hasta aquí es suficiente para entender la idea. En la vida real, existen diferentes tablas de conversión de caracter a binario pero la más popular (y antigua más que nada) es la llamada ASCII (acrónimo inglés de American Standard Code for Information Interchange — Código Estadounidense Estándar para el Intercambio de Información). Este es el estándar más utilizado para mantener la relación carácter-número. Muchos de nosotros la hemos utilizado (posiblemente sin saberlo) cuando en los teclados antiguos, utilizabamos la tecla Alt para generar algunos caracteres especiales. Por ejemplo, utilizabamos el Alt+64 para hacer la arroba (@). Es decir, la arroba se corresponde con el valor 64 en el código ASCII. En un principio, el ASCII estaba representado por 7 bits (un valor binario de 7 dígitos) por lo que se pueden representar 128 valores diferentes (el 1111111 en binario es dicho valor en decimal). Los primeros 32 valores se utilizan para caracteres de control como el salto de línea (enter) o el escape. Los siguientes 96 valores representan los caracteres imprimibles, ellos son los siguientes:

! ” # $ % & ‘ ( ) * +, -. / 0 1 2 3 4 5 6 7 8 9 :; < = > ?

@ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _

` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~

Años más tarde de la creacíon del código ASCII, se creo el ASCII extendido. Este agrega un bit más quedando cada valor de 8 bits (un uno o un cero más) y pudiendo formar ahora 256 caracteres. De esta forma, los primeros 128 valores coinciden con la tabla ASCII clásica y se agregan nuevos caracteres hasta el valor 240. Entre estos nuevos caracteres, se encuentran las vocales con acentos, las eñes (ñ - Ñ) y la arroba, entre otros. La tabla ASCII extendida completa puede ser consultada en el sitio www.asciitable.com. A forma de resúmen, podemos observar que la creación de un estándar fue lo que soluciona el problema de la representación de letras en binario ya que matemática seguimos haciendo lo mismo que al pasar números de decimal a binario. Espero poder de esta forma “cerrar” las ideas básicas del porqué las compus utilizan unos y ceros y cómo lo hacen con los símbolos simples (números y palabras). Antes de terminar, puede quedar una duda más: suponiendo que tengo un valor cualquiera, digamos el 100 (en decimal), es decir el 1100100 en binario. ¿cómo sabe la Pc si se está representando el número 100 o el caracter d (ver tabla ascii)? Para explicarlo de forma simple y no dejar a la espera de los siguientes post al respecto; digamos que lo que importa es el contexto. Cuando en la Pc hay algún tipo de acción, el ordenador previamente sabe en qué formato se le está pasando la información (¿estoy leyendo un número o un código ascii?). Es decir, supongamos que nos comunicamos entre nosotros y yo les digo: “les paso un número binario: 1100010011010010110111001100001011100100110100101101111″. Obviamente que ninguno de nosotros se va a poner a convertir este valor a decimal pero para que se hagan una idea estamos hablando de un valor de más de 1 billón en sistema decimal. Pero si yo les dijera en cambio que les paso el mismo valor pero en código ascii se podría leer tranquilamente el valor antes mencionado. En un principio, simplemente se lo debe dividir en grupos de a 8 para que quede algo así:

01100010 01101001 01101110 01100001 01110010 01101001 01101111

Luego puedo traducir cada valor en decimal ya que estamos hablando de valores más pequeños:

01100010 01101001 01101110 01100001 01110010 01101001 01101111

98 105 110 97 114 105 111

Y finalmente podemos utilizar la tabla ASCII para convertir a caracteres y obtener la palabra:

01100010 01101001 01101110 01100001 01110010 01101001 01101111

98 105 110 97 114 105 111
b i n a r i o
Siempre en la computadora es importante conocer el contexto para poder comprender qué tipo de datos se están transmitiendo. Es decir, la computadora transmite “bloques” de información que tienen un cartel pegado que indica qué tipo de “bloque” se está transmitiendo.
Para quienes quieran desafiar su entendimiento (espero que se haya entendido), les dejo esta imágen que encontré en Codigo Geek. A ver si pueden leer el texto (utilizando la tabla ASCII) sin recurrir a la web de origen donde está la repuesta.

binariopalabra.jpg

16 comentarios para “¿Cómo escribo “binario” en binario?”

  1. SoloE Dice:

    Creo que tengo la respuesta, pero no se si se puede publicar…

    La palabra de cuatro letras comienza con A ???

    Saludos.
    SoloE.

  2. sebastian Dice:

    Gracias SoloE por tus comentarios!
    Sí, la respuesta empieza con A y es una palabra digamos que “linda”, jeje.

  3. Alexis Dice:

    Aspirinaaaaa no puede haber una palabra mas linda que esa ! ! ! si debe ser aspirina lo solucione en unos pocos segundos =) soy genial, me voy porque necesito mis aspirinas … adonde estan las malditas aspirinaaaaaaaaaaaaassssssss QUIEN me robo las aspirinaaaaaaaaassssssssssssssssssss maldicion.

    … muy bueno el articulo, (mejor expicado que en la universidad) me voy a la farmacia a comprar aspirinas suerte! 010011100110111 –> no significa nada pero me gustan los binarios =S

  4. Lackfer® Dice:

    Mira en esta pagina hay un convertidor de binario a texto y viceversa:

    Bin ⇔ Txt ⇔ Rot13

    Sacado de:

    Es útil

    salu2!

  5. juan12343 Dice:

    pues laneta nose ……………..

  6. Jorge Dice:

    Muy buen post y muy buen blog.
    Saludos Santiagueños.

  7. Mariano Dice:

    amor…..

  8. Mariano Dice:

    http://www.theskull.com/javascript/ascii-binary.html

    :P

  9. sebastian Dice:

    Bueno, veo que algunos han encontrado fomas más simples de convertir sin utilizar la tabla… :D
    Para quienes quieren practicarlo pueden consultar ambos links que están muy buenos para convertir…
    Gracias por todos los comentarios…

  10. meneame.net Dice:

    01100010 01101001 01101110 01100001 01110010 01101001 01101111

    No, no me he vuelto loco escribiendo el título ni es ninguna inocentada. Pero así es cómo se escribe "binario" en binario. ¿Qué cómo se hace? pues en el enlace tenéis la explicación. Visto en Microsiervos: http://www.microsiervos.com/archivo...

  11. Se va el 11111010111. Bienvenido el 11111011000. « Mundo Binario Dice:

    [...] además, uno de los últimos post (¿cómo escribo “binario” en binario?) tuvo un éxito importante, fue el más visto hasta el momento del blog y logró estar en los [...]

  12. Curiosidades Matemáticas « Mundo Binario Dice:

    [...] Luego de los post sobre números binarios, practicamente no volví a postear sobre matemáticas y hoy, es la oportunidad de retomar una [...]

  13. Manuel Dice:

    La palabra es “AMOR” …. :)

  14. Sobre IT en los grandes medios « Mundo Binario Dice:

    [...] no me interesa hacerlo de forma marketinera, más allá del contenido del post. Por ejemplo, “¿Cómo escribo binario en binario?” es el post más leído del blog y supongo que el buen título habrá ayudado. Sin embargo, [...]

  15. jose cordova alvarado Dice:

    estube leyendo sus comentarios y me doy cuenta que no hay etica profesional desde el comnienzo;sobreentiendo que los amigos saben hacer amigos directa o indirectamente?

  16. Sebastián Bortnik Dice:

    Estimado Jose,

    Si te refieres a mi respecto a la ética profesional, no se a qué te refieres! :-(

    Publiqué de todas formas tu comentario porque no me gusta borrar comentarios pero me gustaría saber qué quisiste decir…

    Gracias.

Escribe un comentario