Datos y sistemas de numeración en informática


 La palabra dato proviene del latín datum (plural, data) que significa "lo que se da", en el sentido de "lo que acontece". El diccionario de la Real Academia Española dice que los datos son "antecedentes necesarios para llegar al conocimiento exacto de una cosa o para deducir las consecuencias legítimas de un hecho". Los datos suelen ser magnitudes numéricas directamente medidas o captadas, pero también pueden ser nombres o conjuntos de símbolos, o valores cualitativos; frases enteras, premisas, imágenes, sonidos, colores, etcétera.
Los datos, la información, se presentan mediante secuencias de símbolos. Por ejemplo, en la vida diaria se representan las palabras mediante letras tomadas del alfabeto, uno entre los muchos alfabetos existentes. Una misma letra puede tener sonidos diferentes según el idioma que se esté usando, y una palabra con sentido en un idioma puede carecer de él en otro. Además, los símbolos que se emplean para representar los números son los dígitos del 0 al 9. Existen otros sistemas como el heredado de los romanos, que es más difícil de usar.
Si se piensa en el párrafo anterior, es observable que con base en un alfabeto cualquiera que se establezca por acuerdo cultural, se puede representar cualquier información compuesta de palabras y cantidades numéricas, y así el que lee entenderá a quien escribe. 
Un alfabeto no es más que un conjunto, fijado por acuerdo cultural, de símbolos elementales con base en los cuales se configura la información. Es importante recalcar la arbitrariedad de cualquier alfabeto, por que si la informática ha logrado el tratamiento automático de la información con máquinas, ello a sido así gracias a este concepto. No es necesario que el alfabeto que usa una máquina en su interior sea el mismo que utiliza el hombre que la ha construido y la maneja; basta con que la traducción de los símbolos internos a los externos o viceversa se efectúe cómodamente, y de ser posible (y lo es) en forma automática por la máquina misma.
Cuando una información que originalmente venía representada en un alfabeto A1 es transcrita a un segundo alfabeto A2, se dice que ha sido codificada. Así, se puede definir un código como una representación unívoca de las informaciones, en tal forma que a cada una de estas se le asigna una combinación de símbolos determinada. Un ejemplo clásico es el código Morse, empleado en los comienzos de la telegrafía.
Cuando los símbolos por codificar (alfabeto A1) son transcritos a secuencias de un alfabeto (alfabeto A2) que solo tiene dos símbolos, se dirá que se tiene dos símbolos, se dirá que se tiene un sistema de codificación binaria. Estos sistemas son especialmente importantes en informática, pues son los que se usan de ordinario. El motivo para usar un alfabeto de tan solo dos símbolos es de tipo técnico, como ya se verá.

Sistemas de numeración

El sistema de numeración habitual es de base 10 (o decimal), es decir, existen 10 dígitos (0, 1... 9) posibles en cada posición del número, empezando con el cero, el valor (peso) de posición del dígito n es 10 quiere decir: 1*103+2*102+3*101+4*10. Para indicar explícitamente que el número 1234 está en base 10, se representa así: 123410.
Lo que se ha dicho hasta ahora del sistema decimal se puede resumir diciendo que es un sistema de numeración posicional, lo que significa que el valor de una cifra depende de la posición en la que se encuentre. Es decir, un número X estará formando por un conjunto de cifras, del siguiente modo:
x=xk xk-1... x1 x0 x-1... x-j. El subíndice indica la posición. Según este subindice, cada posición tiene un peso. Los elementos xk se llaman coeficientes. Llamando b a la base de numeración, se tiene la siguiente fórmula general, que da el valor decimal de un número en cualquier base b:
Otro ejemplo de base 10(b=10), ahora también con parte decimal:
174,25(10=1*102+7*101+4*100+2*10-1+5*10-2
A partir de aquí, para obtener un nuevo sistema de numeración, solamente se tiene que elegir una base b. Siempre se verificará, además, que los coeficientes (los dígitos que forman los números en una base b) cumplen que:

Sistema binario





El computador está diseñado sobre la base de numeración binaria (base 2). Por eso, este caso particular merece mención aparte. Siguiendo las reglas generales para cualquier base expuesta antes, se tiene que existen dos dígitos (0 ó 1) en cada posición del número.
Numerando de derecha a izquierda los dígitos de un número, empezando por cero, el valor decimal de la posición en 2n. Por ejemplo, 11012 (en base 2) quiere decir: 1*23+1*22+0*21+1*20=8+4+0+1=1310
  • Sistema de numeración en base 8 (octal): Existen ocho dígitos: 0,1,2,3,4,5,6,7. Numerando de derecha a izquierda los dígitos de un número, empezando por cero, el valor decimal de la posición es 8n. Por ejemplo, 4378 quiere decir: 4*82+3*81+7*80=256+24+7=28710
  • Sistema de numeración de base 16 (hexadecimal): Existen 16 dígitos: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Los dígitos hexadecimales A al F se corresponden con los valores decimales 10 al 15. Numerando de derecha a izquierda los dígitos de un número, empezando por cero, el valor decimal de la posición es 16n. Por ejemplo, B7D316 quiere decir: 11*163+7*162+13*161+3*160=45056+1792+208+3=4705910. Además del subindice n, existe otra notación para indicar la base en la que está representado un número. Esta otra notación consiste en añadir un sufijo tras el número.
Cambios de base de numeración

Existe un procedimiento general para cambiar una base cualquiera a otra cualquiera: para pasar de una base cualquiera de base 10, se ha visto que basta realizar la suma de los productos de cada dígito por su valor de posición. Los valores de posición se obtienen como potencias sucesivas de la base, de derecha a izquierda, empezando por el exponente cero. Cada resultado obtenido se suma, y el resultado global es el número en base 10.
Para pasar de base 10 a otra base, en vez de multiplicar, se divide el número por convertir entre la nueva base. El cociente se vuelve a dividir por la base, y así sucesivamente hasta cuando el cociente sea inferior a la base. El último cociente y los restos (en orden inverso) indican los dígitos en la nueva base. Por ejemplo, para pasar el número 3510 a binario, octal y hexadecimal, haremos:
3510=1000112
3510=438
3510=2316
Para pasar en general de una base m a una base n, se hará lo siguiente: primero se pasa de base m a base 10 (método conocido) y luego de base 10 a base n (también conocido). En ocaciones, para pasar de una base m a una base n no es necesario hacer lo que se acaba de indicar sino que se puede usar un método mucho más simple. Para explicar esto, se introduce el concepto de correspondencia entre sistemas: cualquier base de numeración que sea potencia de otra base (como las bases 2, 8 y 16) tiene una correspondencia. De este modo, por ejemplo, se puede:
  1. Representar cada dígito octal en forma de una combinación de tres dígitos
  2. Representar cada dígito hexadecimal como cuatro dígitos binarios
De este modo, cuando se está convirtiendo un número expresado en una base a otra base que sea potencia de la primera, se puede usar la propiedad que se acaba de citar. Por ejemplo:
3758
011 111 10112
A3F616
1010 0011 1111 01102

Comentarios

Entradas populares