Contenido
- 1. Introducción
- 2. Sistemas numéricos
- 2.1 Sistema Decimal
- Ejemplo 1.
- Ejemplo 2
- 2.2 Sistema Binario.
- 3. Representación de sistemas numéricos
- 3.1 Representación Yuxtaposicional.
- 3.2 Representación Polinomial
- Ejemplo 3
- Ejemplo 4
- Ejemplo 5
- Ejemplo 6
- 4. Conversión entre bases
- 4.1. Conversión binario a decimal
- Ejemplo 7.
- Ejemplo 8
- Ejemplo 9
- Ejemplo 10
- 4.2. Conversión decimal a binario
- a) Método de las potencias de 2
- Ejemplo 11
- Ejemplo 13.
- Ejemplo 14
- b) Método de la división por 2
- Ejemplo 15
- Ejemplo 16
- 5. Suma binaria
- Ejemplo 17
1. Introducción
El objetivo del presente apunte es mostrar algunas de las diferentes formas que han sido ideadas para representar información en un ambiente digital. En particular, nos remitiremos a formas de escribir números.
El sistema numérico que utilizamos desde la enseñanza básica, está basado en 10 dígitos y con ellos podemos escribir números de cualquier tamaño; es conocido como Sistema Decimal y, aparte de que nosotros tengamos 10 dedos, el sistema decimal no posee ninguna otra característica que lo haga particularmente atractivo.
La introducción de los computadores digitales y la tecnología en la que ellos están basados, es la causa del gran interés por sistemas numéricos de base dos, llamado sistema de numeración binario.
En lo que sigue, vamos a presentar algunos de los conceptos más importantes de los sistemas numéricos decimal y binario. El decimal porque, dada nuestra familiaridad con él, nos permitirá utilizarlo para mostrar cómo operan los sistemas numéricos posicionales en general.
2. Sistemas numéricos
Comenzaremos describiendo brevemente los parámetros que son comunes a todos los sistemas numéricos. Una clara comprensión de estos parámetros y su relevancia para un sistema numérico es fundamental para entender cómo operan los distintos sistemas numéricos. Las diferentes características que definen un sistema numérico, incluyen el número independiente de dígitos, el valor de la posición de los diferentes dígitos que constituyen el número y los números máximos que puede ser escritos con el número dado de dígitos. Entre los tres parámetros característicos, el fundamental es el número de dígitos independientes o símbolos usados en el sistema numérico. Este es conocido como base o raíz del sistema numérico.
El sistema numérico decimal, con el cual estamos familiarizados, se dice tener base 10, dado que tiene 10 dígitos independientes (0, 1, 2, 3, 4, 5, 6, 7, 8. y 9).
Similarmente, el sistema binario con solo dos dígitos independientes (0 y 1), es de base 2. Los sistemas numérico octal y hexadecimal son de base 8 y base 16 respectivamente. Veremos a continuación que la base (o raíz) del sistema numérico también determina las otras características.
2.1 Sistema Decimal
Con excepción de requerimientos especiales tal como la computación digital, el sistema numérico base 10 (sistema decimal), es el que ha sido adoptado universalmente. Veremos a continuación la forma intuitiva de como construimos nuestro sistema numérico decimal de uso habitual.
Este sistema numérico tiene base 10 y por lo tanto diez símbolos o dígitos diferentes. Estos diez símbolos no solo los usamos para representar diez cantidades diferentes, sino que usamos varios dígitos, en las posiciones adecuadas dentro de un número para indicar la magnitud de la cantidad.
Para contar en decimal, todos los números mayores que 9 son representados en términos de solo estos diez dígitos. El proceso de escribir números mayores que 9, consiste en ir escribiendo primero el segundo digito (es decir, 1), seguido por los dígitos ‘0’ al ‘9’ uno a uno (10, 11, 12, etc.), obteniendo de esta forma los números desde el ‘10’ hasta el ‘19’. Los siguientes 10 números desde el ‘20’ al ‘29’, se obtienen escribiendo primero el tercer dígito (es decir, 2), seguidos por los dígitos ‘0’ al ‘9’ uno a uno. El proceso continua hasta agotar todas las posibles combinaciones de dos dígitos hasta llegar al ‘99’. Luego, se continúa con las combinaciones de tres dígitos. El primer digito de tres números consiste del menor de los números de dos dígitos (es decir 10), seguido por ‘0’ (sea 100) y el proceso avanza indefinidamente de la misma forma. La posición de cada dígito decimal indica la magnitud de la cantidad representada y se le puede asignar un peso.
Ejemplo 1.
El número 5823 puede ser escrito de la siguiente forma.
La Fig. 1, muestra como la posición en que se encuentra el dígito 5 cambia de valor de acuerdo a si se encuentra en la columna de las unidades, en la columna de las decenas o la columna de los miles. Observar que una posición a la izquierda de una columna dada, aumenta su valor en la cantidad de 10.
Ejemplo 2
Expresar el decimal 59 como la suma de los valores de cada dígito
Solución 2. Como lo indican sus respectivas posiciones, el dígito 9 tiene peso 10 y el dígito 9 tiene peso 1, entonces:
$$59 = 5 \times 10 + 9 \times 1 = 50 + 9$$
Entonces, el valor de la posición o peso, es función de la base (o raíz) del sistema numérico correspondiente (en este caso 10). Veremos más adelante que el concepto de que cada dígito tiene un valor que depende de la posición del digito y de la base del sistema numérico es igualmente válido para otros sistemas numéricos.
Algún lector estará pensando, y con razón, ¿para que todo este complicado tema de las sumas de potencias de 10 si nosotros no lo necesitamos para nuestro quehacer?. Pues bien, efectivamente nosotros los humanos no necesitamos de esto, pero, las máquinas si lo necesitan. Para que las máquinas trabajen para nosotros, para que funcionen los computadores, celulares, internet etc. etc., para que podamos usarlas, necesariamente debemos interactuar con ellas en términos matemáticos y lógicos y, además en su idioma que, hoy día, es el idioma digital.
El sistema de números decimales es con el cual estamos familiarizados y nos sirve de ejemplo para comprender los conceptos que necesitaremos manejar para utilizar el lenguaje de las máquinas: el lenguaje digital, el de los ceros y unos, usualmente llamados bit (en inglés, acrónimo de binary digit).
2.2 Sistema Binario.
El sistema binario es un sistema numérico de base 2, con dos dígitos independientes: ‘0’ y ‘1’ (bits). Todos los números grandes son representados con ceros y unos. El procedimiento para escribir números más grandes que ‘1’, es similar al explicado para los números decimales. La diferencia es que en números decimales se disponen de diez dígitos (0, 1, 2 ,3, 4, 5 ,6, 7, 8 y 9), en cambio en el sistema binario de disponen solo de dos (0 y 1).
Para contar en binario, comenzamos con 0 seguimos con 1 y se nos terminan los dígitos disponibles, entonces, debemos colocar el único segundo digito (‘1’) en la segunda columna, mientras la primera comienza con (‘0’), obteniendo 10, luego cambia la primera columna de ‘0’ a ‘1’ obteniéndose 11; se terminan los dígitos, por lo tanto agregamos un ‘1’ en la tercera columna y así sucesivamente. Fig. 2
En la Tabla 1, se utilizan cinco bits para contar hasta el decimal 17. Observe cada fila en la que un solo ‘1’ representa un número binario. Esto muestra lo que cada posición representa. Por ejemplo el 100 representa el 4 decimal, el 1000 representa el 8 decimal es decir, la cuarta posición representa el 8 etc.
La correspondencia de la cuenta en binario y decimal es la siguiente: la primera columna corresponde al 0 y 1 tanto en decimal como en binario. A continuación se incrementa la segunda columna binaria para obtener 10 (que corresponde al 2 decimal), luego se incrementa le primera columna para obtener 11 (para obtener el 3 decimal); a continuación se incrementa en 1, la tercera columna para obtener 100 (que corresponde al 4 decimal).
Es fácil concluir que para el sistema binario (base 2), para cada nueva columna hacia la izquierda se obtiene un incremento (peso) en una potencia de dos. Primera columna a \({2^0} = 1\) (peso 1). Segunda columna \({2^1} = 2\) (peso 2), tercera columna \({2^2} = 4\) (peso 4), cuarta columna \({2^3} = 8\) (peso 8), etc. De esta forma y análogamente a la base 10, un número binario se puede escribir en términos de potencias de 2. Esta información nos ayudará a desarrollar un método para convertir números de decimal a binario.
Un detalle se observa cuando trabajamos con números de distinta base. Por ejemplo si tenemos un número como el 100; ¿corresponde al 4 en binario o al 100 en decimal?. Para soslayar este problema se usa un subíndice para indicar de qué base se trata. Ejemplo \({100_2}\) ndica que el número está en base 2 y \({100_{10}}\) que está en base 10.
Hasta aquí hemos seguido un método más bien intuitivo para estudiar los sistemas numéricos. A continuación veremos dos métodos formales de representar un número en un sistema numérico e incluiremos también números fraccionarios.
3. Representación de sistemas numéricos
3.1 Representación Yuxtaposicional.
La notación de los números decimales que usamos comúnmente es denominada yuxtaposicional, en la cual se asume el valor posicional de los dígitos.
En general, un número N cualquiera, en notación yuxtaposicional se escribe como sigue:
$$N = {\left( {{a_{n - 1}}{a_{n - 2}} \cdots \cdots \cdots {a_1}{a_0}.\,{a_{ - 1}}{a_{ - 2}} \cdots \cdots \cdots {a_{ - m}}} \right)_r}$$
Donde:
\(r = \) Base | \(m =\) Número de dígitos fraccionarios |
---|---|
\(a_i = \)Dígitos | \({a_{n - 1}} = \) Dígito más significativo |
\(n = \) Número de dígitos enteros | \({a_{ - m}} = \) Dígito menos significativo |
Entonces el número total de dígitos usados en el sistema numérico es igual a la base r del sistema numérico:
$$0 \le {a_i} \le r - 1{\rm{ }}\,\,\,\,\,\,\,\,\,\,{\rm{con}} - m \le i \le n - 1$$
Por ejemplo, para el número decimal \({(1564)_{10}}\): \(r = 10\,\,y\,\,0 \le {a_i} \le 9\)
3.2 Representación Polinomial
La representación polinomial es, como su nombre lo indica, la desarrollada en términos de un polinomio, en que cada dígito está ubicado en una posición que le da un cierto "peso" y que dicho peso, de cada posición, es una potencia de la base. En general, cualquier número N puede ser escrito como un polinomio de la forma:
$$N = \sum\limits_{i = - m}^{n - 1} {{a_i}{r^i}} = {a_{n - 1}}{r^{n - 1}} + {a_n}{r^n} + \cdots \cdots + {a_1}r + {a_0}.\,{a_{ - 1}}{r^{ - 1}} + {a_{ - 2}}{r^{ - 2}} + \cdots \cdots + {a_{ - m}}{r^{ - m}}$$
Donde, cada símbolo es definido igual que para el caso yuxtaposicional.
Ejemplo 3
Para el número decimal (2563)10
Solución 3 :
\(r = 10;\,\,\,\,\,\,\,3 \le i \le 0\,\,\,\,\,\,\,\,\,{a_3} = 2;\,\,\,\,\,{a_2} = 5;\,\,\,\,\,\,{a_1} = 6;\,\,\,\,\,\,{a_0} = 3;\)
\({\left( {2563} \right)_{10}} = 2 \times {10^3} + 5 \times {10^2} + 6 \times {10^1} + 3 \times {10^0}\)
Ejemplo 4
Para el número decimal (745.97)10
Solución 4.
\(r = 10;\,\,\,\,\,\,\,2 \le i \le - 2\,\,\,\,\,\,\,\,\,\,\,\,\,{a_2} = 7;\,\,\,\,\,\,{a_1} = 4;\,\,\,\,\,\,{a_0} = 5;\,\,\,\,\,\,{a_{ - 1}} = 9;\,\,\,\,\,\,{a_{ - 2}} = 7\)
$${\left( {745,97} \right)_{10}} = 7 \times {10^2} + 4 \times {10^1} + 5 \times {10^0}.9 \times {10^{ - 1}} + 7 \times {10^{ - 2}}$$
Ejemplo 5
Para el número binario (101101)2
Solución 5
\(r = 2;\,\,\,\,\,\,\,5 \le i \le 0\,\,\,\,\,\,\,\,\,\,\,\,\,{a_5} = 1;\,\,\,\,\,\,{a_4} = 0;\,\,\,\,\,\,{a_3} = 1;\,\,\,\,\,\,{a_2} = 1;\,\,\,\,\,\,{a_1} = 0;\,;\,\,\,\,\,\,{a_0} = 1\)
$$\begin{array}{c}
{\left( {101101} \right)_2} = 1 \times {2^5} + 1 \times {2^4} + 0 \times {2^3} + 1 \times {2^2} + 0 \times {2^1} + 1 \times {2^0}\\
= 1 \times 32 + 1 \times 16 + 0 \times 8 + 1 \times 4 + 0 \times 2 + 1 \times 1\\
= 32 + 16 + 4 + 1 = {\left( {53} \right)_{10}}
\end{array}$$
Ejemplo 6
$${\left( {10101011} \right)_2} = 1 + 2 + 8 + 32 + 128 = {\left( {171} \right)_{10}}$$
4. Conversión entre bases
A partir del ejemplo 5, es claro cómo convertir un número de binario a decimal, solo se evalúa la serie de potencias. Para hacer esto con facilidad, es útil conocer las potencias de 2, más que calcularlas cada vez que se les necesita. (se ahorraría mucho tiempo memorizar las primeras diez potencias de 2. En la tabla 2 se muestran la primeras 20).
4.1. Conversión binario a decimal
Para convertir un número binario a decimal se suman los pesos de todos los bits del número binario que se encuentran en ‘1’ y se excluyen los bits que están en cero.
Ejemplo 7.
Convertir a decimal el número binario (1 0 1 1 0)2
Solución 7. Como el número a convertir tiene 5 bits, los pesos asociados son \({2^4};\,\,{2^3};\,\,{2^2};\,\,{2^1};\,\,{2^0}\)
entonces:
Ejemplo 8
Convertir a decimal el número binario (1 1 0 1 0 1 0 )2
Solución 8 Como el número a convertir tiene 5 bits, los pesos asociados son \({2^6};{2^5};{2^4};\,\,{2^3};\,\,{2^2};\,\,{2^1};\,\,{2^0}\)
entonces:
Ejemplo 9
Convertir a decimal el número binario fraccionario (0,1 1 1 0)2
Solución 9. Como el número a convertir tiene 4 bits, los pesos asociados son \({2^{ - 1}};\,\,{2^{ - 2}};\,\,{2^{ - 3}};\,\,{2^{ - 4}}\)
entonces
Ejemplo 10
Convertir a decimal el número binario fraccionario (1 1 0,1 1)2
Solución 10. Como el número a convertir tiene 5 bits, los pesos asociados son \({2^2};\,\,{2^1};\,\,{2^0};\,\,{2^{ - 1}};\,\,{2^{ - 2}}\)
entonces:
4.2. Conversión decimal a binario
La forma equivalente a la transformación binario a decimal anterior, utilizando las potencias de 2, consiste en restar del número decimal, la potencia de dos más grande, menor que el número decimal a convertir y se coloca un ‘1’ en la posición correspondiente al equivalente binario. Luego, se repite el proceso con el resto. Se coloca un ‘0’ en la posición de aquellas potencia de dos que so mayores que el residuo.
a) Método de las potencias de 2
Ejemplo 11
Convertir el número \({\left( {754} \right)_{10}}\) a binario
Solución 11. La mayor potencia de 2, que es menor que 754 es \({2^9} = 512\), , entonces existe un ‘1’ en la posición correspondiente al. Luego el resto es \(754 - 512 = 242\); buscamos ahora la mayor potencia de 2 que es menor que 242; esta es: \({2^7} = 128\) en consecuencia existe un ‘1’ en la posición \({2^7}\); (en la posición \({2^8}\) debe ir un ‘0’), ahora \(242 - 128 = 114 \Rightarrow \) buscar la potencia de 2 mayor que sea menor que , esta es \({2^6} = 64\) entonces existe un ‘1’ en la posición \({2^6}\); ahora \(114 - 64 = 50 \Rightarrow \) buscar mayor potencia de 2 que sea menor que esta es: \({2^5} = 32\) entonces existe un ‘1’ en la posición \({2^5}\); ahora \(50 - 32 = 18 \Rightarrow \) buscar la mayor potencia de 2 que es menor que , esta es: \({2^4} = 16\) entonces existe un ‘1’ en la posición \({2^4}\) ahora \(18 - 16 = 2 \Rightarrow \) en las posiciones \({2^3},\,\,{2^2}\,\,y\,\,{2^0}\) existen ‘0’ mientras que en la posición \({2^1}\) existe un ‘1’. Por lo tanto el equivalente binario de es:
Ejemplo 13.
Convertir el número \({\left( {175} \right)_{10}}\) a binario
Solución 13. La mayor potencia de dos menor que 175 es 128 Entonces:
Ejemplo 14
Convertir el número \({\left( {131} \right)_{10}}\) a binario
Solución 14. La mayor potencia de dos menor que 131 es 128 Entonces:
b) Método de la división por 2
Otro método para convertir un número decimal a binario es dividir repetidamente el decimal por 2. Cada división proporciona un dígito de la respuesta binaria, empezando por el dígito menos significativo \({2^0}\).
Ejemplo 15
Convertir el número \({\left( {754} \right)_{10}}\) a binario por el método de la división.
Solución 15.
Ejemplo 16
Convertir el número \({217_{10}}\) a binario por el método de la división.
Solución 16.
5. Suma binaria
Para calcular la suma de dos binarios, se suma un dígito a la vez (como se hace en decimal), lo que produce una suma y un acarreo hacia el siguiente bit cuando la suma excede los símbolos numéricos disponibles de la notación. En este caso se lleva un uno a la posición de dígitos inmediatamente superior.
La tabla de sumar para el sistema binario es:
Por lo tanto, al sumar 1+1 en la notación binaria se excede el límite de la cuenta (ya que no hay otro símbolo disponible) y en consecuencia el resultado es 0 con acarreo de 1 a la posición de dígito inmediatamente superior.
Ejemplo 17
Sumar los números binarios \({\left( {0111} \right)_{10}} + {\left( {0110} \right)_{10}}\)
Solución 17.
Deja una respuesta