Sistemas de numeración
Calculadora de cambio de base
Escribe un número entero o un número con parte fraccionaria, por ejemplo $156,$ $101{,}11$ o $\mathrm{7E9}$ (base 16), y elige su base y la base a la que quieres convertirlo. Las cifras mayores que 9 son letras: A = 10, B = 11, …, Z = 35. La calculadora muestra la solución paso a paso.
¿Qué es un sistema de numeración?
Un sistema de numeración es una forma de escribir los números con un pequeño conjunto de símbolos llamados cifras (o dígitos). Normalmente escribimos los números en el sistema decimal. Tiene diez cifras, de $0$ a $9,$ probablemente porque al principio la gente contaba con los diez dedos de las manos. Los mismos números se pueden escribir también en otros sistemas. Las computadoras trabajan en el sistema binario, que tiene solo dos cifras, $0$ y $1;$ los programadores usan también la base $8$ y la base $16,$ y los minutos y los segundos los seguimos contando de sesenta en sesenta.
Todos estos sistemas son posicionales: el valor de una cifra depende de su posición en el número. En $555$ los tres cincos valen $500,$ $50$ y $5.$ Los números romanos funcionan de otra manera: en ellos la X vale siempre diez (se suma en LX y se resta en XL); su posición nunca hace que valga cien.
En esta página: Calculadora · Valor posicional · Bases · Contar · Binario · A decimal · Desde decimal · Fracciones · Aritmética binaria · Octal y hexadecimal · Bases 12 y 60 · Bits, bytes, BCD · Problemas
Valor posicional en el sistema decimal
Cada posición de un número decimal vale diez veces más que la que está a su derecha: unidades, decenas, centenas, unidades de millar, etc. Por eso un número es la suma de sus cifras, cada una multiplicada por una potencia de $10\text{:}$
${3507}={3\cdot 1000}+{5\cdot 100 + 0\cdot 10 + 7}={3\cdot 10^3 + 5\cdot 10^2}+{0\cdot 10^1 + 7\cdot 10^0.}$
Esta es la forma desarrollada del número. El cero es importante: indica que no hay decenas, y sin él $3507$ se convertiría en $357.$ Las posiciones a la derecha del separador decimal (la coma o el punto) valen décimas, centésimas, milésimas, es decir, potencias negativas de $10\text{:}$
${0{,}25}={\frac{2}{10} + \frac{5}{100}}={2\cdot 10^{-1} + 5\cdot 10^{-2}.}$
Números en cualquier base
Nada nos obliga a agrupar de diez en diez. En un sistema de base $b$ hay $b$ cifras, de $0$ a $b-1,$ y cada posición vale $b$ veces más que la que está a su derecha. Las posiciones valen $1,$ $b,$ $b^2,$ $b^3$ y así sucesivamente, de modo que las cifras $a_n\ldots a_2a_1a_0$ representan el número
${(a_n\ldots a_2a_1a_0)_b}={a_n\cdot b^n + \ldots}+{a_2\cdot b^2 + a_1\cdot b + a_0.}$
La base se escribe como un pequeño subíndice detrás de las cifras: $1011_2$ es un número binario, y $1011_{10}$ es el número decimal mil once. Un número sin subíndice es decimal. En una base mayor que diez, las cifras que siguen al $9$ son letras: $\mathrm{A} = 10,$ $\mathrm{B} = 11,$ $\mathrm{C} = 12,$ y así hasta $\mathrm{Z} = 35$ en base $36.$
Ejemplo 1. Las mismas cifras representan números distintos en bases distintas:
${1011_2}={1\cdot 2^3 + 0\cdot 2^2 + 1\cdot 2 + 1}={8 + 2 + 1}={11,}$
${1011_3}={1\cdot 3^3 + 0\cdot 3^2 + 1\cdot 3 + 1}={27 + 3 + 1}={31,}$
${1011_{10}}={1000 + 10 + 1}={1011.}$
En cualquier base, $10$ (un uno seguido de un cero) es la propia base: $10_2 = 2,$ $10_8 = 8,$ $10_{16} = 16,$ igual que $10$ es diez en el sistema decimal. Del mismo modo, $100_b = b^2$ y $1000_b = b^3.$
Los sistemas más usados:
| Sistema de numeración | Cifras | Dónde se usa |
|---|---|---|
| Base 2, binario | $0$ y $1$ | las computadoras y todos los aparatos digitales |
| Base 8, octal | de $0$ a $7$ | permisos de archivos en Unix y Linux; computadoras antiguas |
| Base 10, decimal | de $0$ a $9$ | contar y calcular en la vida diaria |
| Base 12, duodecimal | de $0$ a $9,$ $\mathrm{A}$ y $\mathrm{B}$ | docenas y gruesas; 12 meses y 12 horas |
| Base 16, hexadecimal | de $0$ a $9$ y de $\mathrm{A}$ a $\mathrm{F}$ | colores en las páginas web, direcciones de memoria, bytes |
| Base 60, sexagesimal | de $0$ a $59$ en cada posición | horas, minutos y segundos; grados, minutos y segundos de los ángulos |
Contar en otras bases
Los contadores mecánicos, como el cuentakilómetros de un automóvil antiguo o un contador de agua, tienen pequeñas ruedas con las cifras de $0$ a $9.$ La rueda de la derecha avanza un paso con cada unidad. Cuando pasa de su última cifra, vuelve a $0$ y hace avanzar un paso la rueda siguiente: después de $0999$ viene $1000.$ Un contador en base $b$ tendría $b$ cifras en cada rueda. En un contador binario cada rueda muestra solo $0$ o $1,$ así que la rueda de la derecha vuelve a $0$ cada dos pasos y hace avanzar un paso la rueda siguiente.
Una unidad más en un contador decimal y en un contador binario: $0999 + 1 = 1000$ y $0111_2 + 1 = 1000_2,$ es decir, $7 + 1 = 8.$
Así pues, en base $b$ se cuenta igual que en decimal: cuando una posición tiene la mayor cifra, $b-1,$ la unidad siguiente la convierte en $0$ y se lleva $1$ a la posición siguiente. Estos son los números del $0$ al $16$ en cuatro bases:
| Decimal | Binario | Octal | Hexadecimal |
|---|---|---|---|
| $0$ | $0$ | $0$ | $0$ |
| $1$ | $1$ | $1$ | $1$ |
| $2$ | $10$ | $2$ | $2$ |
| $3$ | $11$ | $3$ | $3$ |
| $4$ | $100$ | $4$ | $4$ |
| $5$ | $101$ | $5$ | $5$ |
| $6$ | $110$ | $6$ | $6$ |
| $7$ | $111$ | $7$ | $7$ |
| $8$ | $1000$ | $10$ | $8$ |
| $9$ | $1001$ | $11$ | $9$ |
| $10$ | $1010$ | $12$ | $\mathrm{A}$ |
| $11$ | $1011$ | $13$ | $\mathrm{B}$ |
| $12$ | $1100$ | $14$ | $\mathrm{C}$ |
| $13$ | $1101$ | $15$ | $\mathrm{D}$ |
| $14$ | $1110$ | $16$ | $\mathrm{E}$ |
| $15$ | $1111$ | $17$ | $\mathrm{F}$ |
| $16$ | $10000$ | $20$ | $10$ |
El mayor número de $n$ cifras en base $b$ tiene todas sus cifras iguales a $b-1.$ Una unidad más da $10\ldots0_b = b^n,$ así que este número es $b^n-1\text{:}$ $999 = 10^3-1,$ $1111_2 = 2^4-1 = 15$ y $\mathrm{FF}_{16} = 16^2-1 = 255.$
El sistema binario
El sistema binario tiene base $2$ y solo dos cifras, $0$ y $1.$ Una cifra binaria se llama bit, abreviatura del inglés binary digit (dígito binario). Las posiciones de un número binario valen las potencias de $2\text{:}$
| $2^7$ | $2^6$ | $2^5$ | $2^4$ | $2^3$ | $2^2$ | $2^1$ | $2^0$ |
|---|---|---|---|---|---|---|---|
| $128$ | $64$ | $32$ | $16$ | $8$ | $4$ | $2$ | $1$ |
Las potencias siguientes son $2^8 = 256,$ $2^9 = 512$ y $2^{10} = 1024.$ En binario, cada potencia de $2$ se escribe como un $1$ seguido de ceros, por ejemplo $2^5 = 100000_2.$
Las computadoras usan el sistema binario porque un bit necesita solo dos estados fáciles de distinguir: un interruptor está apagado o encendido, un voltaje es bajo o alto. Como cada posición tiene solo dos cifras, muy pronto hay que llevarse una: $1 + 1 = 10_2.$ En binario se cuenta así: $1,$ $10,$ $11,$ $100,$ $101,$ $110,$ $111,$ $1000$ y así sucesivamente.
Convertir un número de cualquier base a decimal
Escribe el valor posicional encima de cada cifra, multiplica cada cifra por su valor posicional y suma. Es otra vez la forma desarrollada.
Ejemplo 2. Convierte $110101_2$ a decimal.
| Valor posicional | $32$ | $16$ | $8$ | $4$ | $2$ | $1$ |
|---|---|---|---|---|---|---|
| Cifra | $1$ | $1$ | $0$ | $1$ | $0$ | $1$ |
${110101_2}={32 + 16 + 4 + 1}={53.}$
Ejemplo 3. Convierte $753_8$ y $\mathrm{2A7}_{16}$ a decimal. En base $8$ las posiciones valen $1,$ $8$ y $8^2 = 64.$ En base $16$ valen $1,$ $16$ y $16^2 = 256,$ y la cifra $\mathrm{A}$ vale $10\text{:}$
${753_8}={7\cdot 64 + 5\cdot 8 + 3}={448 + 40 + 3}={491,}$
${\mathrm{2A7}_{16}}={2\cdot 256 + 10\cdot 16 + 7}={512 + 160 + 7}={679.}$
Para números largos hay un método más rápido, la misma regla de Horner que se usa con los polinomios: empieza por la primera cifra (la de más a la izquierda) y luego, una y otra vez, multiplica el resultado por la base y suma la cifra siguiente. Para $110101_2\text{:}$
| Cifra | $1$ | $1$ | $0$ | $1$ | $0$ | $1$ |
|---|---|---|---|---|---|---|
| Resultado | $1$ | $3$ | $6$ | $13$ | $26$ | $53$ |
Cada resultado es el resultado anterior por $2$ más la cifra que tiene encima: $1\cdot 2 + 1 = 3,$ $3\cdot 2 + 0 = 6,$ $6\cdot 2 + 1 = 13,$ $13\cdot 2 + 0 = 26,$ $26\cdot 2 + 1 = 53.$ El último resultado es el número: $110101_2 = 53.$
Convertir de decimal a binario y a otras bases
Divisiones sucesivas
Haz la división con resto del número entre la nueva base $b.$ El resto es la última cifra del resultado. Divide otra vez el cociente entre $b\text{:}$ el nuevo resto es la penúltima cifra. Sigue así hasta que el cociente sea $0,$ y luego lee los restos de abajo hacia arriba.
Ejemplo 4. Convierte $13$ a binario.
| División | Cociente | Resto |
|---|---|---|
| $13 \div 2$ | $6$ | $1$ |
| $6 \div 2$ | $3$ | $0$ |
| $3 \div 2$ | $1$ | $1$ |
| $1 \div 2$ | $0$ | $1$ |
Leyendo los restos de abajo hacia arriba obtenemos $13 = 1101_2.$ Comprobación: $8 + 4 + 1 = 13.$
Ejemplo 5. Convierte $2025$ a hexadecimal. Un resto mayor que $9$ se escribe con una letra: $14 = \mathrm{E}.$
| División | Cociente | Resto |
|---|---|---|
| $2025 \div 16$ | $126$ | $9$ |
| $126 \div 16$ | $7$ | $14 = \mathrm{E}$ |
| $7 \div 16$ | $0$ | $7$ |
Así, $2025 = \mathrm{7E9}_{16}.$ Comprobación: ${7\cdot 256 + 14\cdot 16 + 9}={1792 + 224 + 9}={2025.}$
¿Por qué funciona este método? La división con resto escribe el número como $n = b\cdot q + r$ con $0 \le r < b,$ así que $r$ es una sola cifra en base $b.$ En base $b,$ multiplicar $q$ por $b$ añade un cero al final de sus cifras, igual que multiplicar por $10$ en decimal, y después sumar $r$ pone $r$ en el lugar de ese cero. Por tanto, $r$ es la última cifra, y delante de ella van las cifras de $q.$
Restar potencias de 2
Para el sistema binario hay otro método. Resta la mayor potencia de $2$ que no supere el número, luego la mayor potencia de $2$ que quepa en lo que queda, y así sucesivamente hasta que no quede nada. Cada potencia usada da un $1$ en su posición; todas las demás posiciones llevan $0.$ Por ejemplo, $13 - 8 = 5,$ $5 - 4 = 1,$ $1 - 1 = 0,$ así que $13 = 8 + 4 + 1 = 1101_2,$ como en el ejemplo 4.
Ejemplo 6. Convierte $1546$ a binario. La mayor potencia de $2$ que no supera $1546$ es $2^{10} = 1024\text{:}$
$1546 - 1024 = 522,$ $522 - 512 = 10,$ $10 - 8 = 2,$ $2 - 2 = 0.$
Así, ${1546}={2^{10} + 2^9 + 2^3 + 2^1.}$ Las posiciones $10,$ $9,$ $3$ y $1$ llevan un $1,$ si contamos las posiciones desde $0$ por la derecha: $1546 = 11000001010_2.$
Para convertir un número entre dos bases distintas de diez, conviértelo primero a decimal y luego a la nueva base. La calculadora también lo hace así, salvo cuando las dos bases son potencias del mismo número, como $8$ y $16.$ Para las bases $2,$ $8$ y $16$ hay un atajo, que se explica en la sección Sistemas octal y hexadecimal.
Fracciones en otras bases
Las cifras que van después del separador decimal funcionan igual: en base $b$ valen $\frac{1}{b},$ $\frac{1}{b^2},$ $\frac{1}{b^3}$ y así sucesivamente. En binario, las posiciones después del separador son medios, cuartos, octavos:
$$101{,}11_2 = 4 + 1 + \frac{1}{2} + \frac{1}{4} = 5{,}75.$$Para escribir un número entre $0$ y $1$ en base $b,$ multiplícalo por $b.$ La parte entera del producto es la primera cifra después del separador. Luego multiplica otra vez por $b$ la parte fraccionaria del producto para obtener la cifra siguiente, y así sucesivamente. Esto funciona porque, en base $b,$ multiplicar por $b$ mueve el separador una posición a la derecha: la primera cifra después del separador pasa delante de él y se convierte en la parte entera.
Ejemplo 7. Convierte $0{,}625$ a binario.
| Multiplicación | Producto | Cifra |
|---|---|---|
| $0{,}625\cdot 2$ | $1{,}25$ | $1$ |
| $0{,}25\cdot 2$ | $0{,}5$ | $0$ |
| $0{,}5\cdot 2$ | $1$ | $1$ |
La parte fraccionaria se ha convertido en $0,$ así que las cifras terminan. Léelas de arriba hacia abajo, no de abajo hacia arriba como en la división: $0{,}625 = 0{,}101_2.$ Comprobación: $\frac{1}{2} + \frac{1}{8} = 0{,}625.$
Un número con parte entera y parte fraccionaria se convierte por partes: la parte entera, por divisiones sucesivas; la parte fraccionaria, por multiplicaciones sucesivas. Por ejemplo, $13 = 1101_2$ (ejemplo 4) y $0{,}625 = 0{,}101_2,$ así que $13{,}625 = 1101{,}101_2.$
Ejemplo 8. Convierte $0{,}1$ a binario.
| Multiplicación | Producto | Cifra |
|---|---|---|
| $0{,}1\cdot 2$ | $0{,}2$ | $0$ |
| $0{,}2\cdot 2$ | $0{,}4$ | $0$ |
| $0{,}4\cdot 2$ | $0{,}8$ | $0$ |
| $0{,}8\cdot 2$ | $1{,}6$ | $1$ |
| $0{,}6\cdot 2$ | $1{,}2$ | $1$ |
La parte fraccionaria $0{,}2$ ya apareció antes, en la segunda fila, así que a partir de ahí las cifras $0011$ se repiten indefinidamente:
${0{,}1}={0{,}0001100110011\ldots_2}={0{,}0\overline{0011}_2.}$
La barra sobre $0011$ indica que este bloque, el período, se repite. Una computadora guarda un número fijo de bits, así que almacena $0{,}1$ solo de forma aproximada. Por eso en muchos lenguajes de programación 0.1 + 0.2 da 0.30000000000000004 y no exactamente 0.3.
Que el desarrollo de una fracción sea finito o no depende de la base. Una fracción irreducible tiene un desarrollo finito en base $b$ (un número finito de cifras después del separador) si y solo si cada factor primo de su denominador divide a $b.$ En base $10 = 2\cdot 5$ las fracciones $\frac{1}{2},$ $\frac{1}{4},$ $\frac{1}{5},$ $\frac{1}{8}$ tienen un desarrollo finito, pero $\frac{1}{3} = 0{,}\overline{3}$ no. En base $3$ ocurre al revés: $\frac{1}{3} = 0{,}1_3.$ En base $7$ incluso $\frac{1}{7} = 0{,}1_7,$ mientras que en decimal $\frac{1}{7} = 0{,}\overline{142857}.$ En binario solo tienen un desarrollo finito las fracciones cuyo denominador, una vez simplificada la fracción, es una potencia de $2.$
Un desarrollo periódico se puede convertir de nuevo en fracción (su fracción generatriz): multiplícalo por $b^k,$ donde $k$ es la longitud del período, y resta. Sea ${x}={0{,}\overline{01}_2}={0{,}010101\ldots_2.}$ Multiplicar por $2^2 = 100_2$ mueve el separador dos posiciones a la derecha: ${4x}={1{,}010101\ldots_2}={1 + x.}$ Por tanto, $3x = 1$ y $x = \frac{1}{3}.$
Aritmética binaria
Los cálculos en cualquier base se hacen con los mismos métodos en columna que en decimal; solo cambian las tablas de sumar y de multiplicar. En binario son diminutas.
Suma
$0 + 0 = 0,$ $0 + 1 = 1 + 0 = 1$ y $1 + 1 = 10_2\text{:}$ escribimos $0$ y llevamos $1.$ Si además llevamos una, $1 + 1 + 1 = 11_2\text{:}$ escribimos $1$ y llevamos $1.$
Ejemplo 9. Suma $1011_2 + 110_2.$ Las cifras que llevamos se escriben en rojo encima de las columnas.
$$\begin{array}{cr} & \textcolor{#c0392b}{111}\phantom{00} \\ & 1011 \\ + & 110 \\ \hline & 10001 \end{array}$$De derecha a izquierda: $1 + 0 = 1;$ $1 + 1 = 10_2,$ escribimos $0$ y llevamos $1;$ $0 + 1 + 1 = 10_2,$ escribimos $0$ y llevamos $1;$ $1 + 1 = 10_2,$ escribimos $0$ y llevamos $1$ a una posición nueva. En decimal esto es $11 + 6 = 17,$ y efectivamente $10001_2 = 16 + 1 = 17.$
Resta
$0 - 0 = 0,$ $1 - 0 = 1$ y $1 - 1 = 0.$ Para $0 - 1$ pedimos prestado $1$ a la posición de la izquierda. Ese $1$ vale $2$ en la posición actual, así que la columna da $10_2 - 1 = 1.$ Si esa posición es $0,$ pedimos prestado al $1$ más cercano por la izquierda; los ceros intermedios se convierten en $1,$ igual que $1000 - 1 = 999$ en decimal.
Ejemplo 10. Resta $1101_2 - 110_2.$
$$\begin{array}{cr} & 1101 \\ - & 110 \\ \hline & 111 \end{array}$$De derecha a izquierda: $1 - 0 = 1.$ Luego, para $0 - 1$ hay que pedir prestado a la tercera posición: $10_2 - 1 = 1,$ y la tercera posición se queda en $0.$ Ahora la tercera columna es $0 - 1,$ y pedimos prestado a la cuarta posición: $10_2 - 1 = 1.$ La cuarta posición se queda en $0.$ El resultado es $111_2,$ y en decimal $13 - 6 = 7.$
Multiplicación
La tabla de multiplicar binaria es $0\cdot 0 = 0\cdot 1 = 1\cdot 0 = 0$ y $1\cdot 1 = 1.$ Por eso, al multiplicar en columna, cada fila es una fila de ceros o el primer número tal cual, desplazado a la izquierda, y solo quedan sumas. Multiplicar por $2 = 10_2$ añade un cero al final, igual que multiplicar por $10$ en decimal.
Ejemplo 11. Multiplica $101_2\cdot 11_2,$ es decir, $5\cdot 3.$
$$\begin{array}{cr} & 101 \\ \times & 11 \\ \hline & 101 \\ & 101\phantom{0} \\ \hline & 1111 \end{array}$$El resultado es ${1111_2}={8 + 4 + 2 + 1}={15.}$
Ejemplo 12. Multiplica $37\cdot 27$ en binario. Primero, $37 = 100101_2$ y $27 = 11011_2.$ El segundo número tiene las cifras $1,$ $1,$ $0,$ $1,$ $1$ empezando por la derecha, así que las filas son $100101$ desplazado $0,$ $1,$ $3$ y $4$ posiciones, con una fila de ceros para el $0\text{:}$
$$\begin{array}{cr} & 100101 \\ \times & 11011 \\ \hline & 100101 \\ & 100101\phantom{0} \\ & 000000\phantom{00} \\ & 100101\phantom{000} \\ & 100101\phantom{0000} \\ \hline & 1111100111 \end{array}$$El producto es ${1111100111_2}={512 + 256 + 128}+{64 + 32 + 4 + 2 + 1}={999,}$ y efectivamente $37\cdot 27 = 999.$ Es un método largo, pero el circuito multiplicador de una computadora funciona de forma parecida: forma las filas desplazadas y las suma, miles de millones de veces por segundo.
División
Dividir en binario es más sencillo que en decimal. En cada paso, o el divisor cabe en la parte del dividendo que hemos bajado hasta ese momento, y la cifra siguiente del cociente es $1,$ o no cabe, y la cifra es $0.$ Así, la división se reduce a restas repetidas.
Ejemplo 13. Divide $1111_2 \div 101_2,$ es decir, $15\div 5.$
$$\begin{array}{cr} & 1111 \\ - & 101\phantom{0} \\ \hline & 101 \\ - & 101 \\ \hline & 0 \end{array}$$El divisor $101$ no cabe en $1$ ni en $11,$ pero cabe en $111\text{:}$ la primera cifra del cociente es $1,$ y $111 - 101 = 10.$ Bajamos la última cifra: $101.$ El divisor cabe otra vez, y el resto es $0.$ Así, $1111_2 \div 101_2 = 11_2,$ es decir, $15 \div 5 = 3.$
Ejemplo 14. Divide $4773\div 37,$ es decir, ${1001010100101_2 \div 100101_2.}$
$$\begin{array}{cr} & 1001010100101 \\ - & 100101\phantom{0000000} \\ \hline & 100101 \\ - & 100101 \\ \hline & 0 \end{array}$$El divisor cabe exactamente en las seis primeras cifras, así que la primera cifra del cociente es $1$ y el resto es $0.$ Al bajar una a una las seis cifras siguientes, los números son menores que el divisor, y en el cociente aparecen seis ceros. Al bajar la última cifra tenemos otra vez $100101\text{:}$ la última cifra del cociente es $1,$ con resto $0.$ Así, ${1001010100101_2 \div 100101_2}={10000001_2,}$ y ${10000001_2}={128 + 1}={129;}$ efectivamente, $37\cdot 129 = 4773.$
Sistemas octal y hexadecimal
Los números binarios largos son difíciles de leer y fáciles de escribir mal. Como $8 = 2^3$ y $16 = 2^4,$ cada cifra octal equivale exactamente a tres bits y cada cifra hexadecimal, exactamente a cuatro bits:
| Cifra | Bits | Cifra | Bits |
|---|---|---|---|
| $0$ | $0000$ | $8$ | $1000$ |
| $1$ | $0001$ | $9$ | $1001$ |
| $2$ | $0010$ | $\mathrm{A}$ | $1010$ |
| $3$ | $0011$ | $\mathrm{B}$ | $1011$ |
| $4$ | $0100$ | $\mathrm{C}$ | $1100$ |
| $5$ | $0101$ | $\mathrm{D}$ | $1101$ |
| $6$ | $0110$ | $\mathrm{E}$ | $1110$ |
| $7$ | $0111$ | $\mathrm{F}$ | $1111$ |
Para una cifra octal, usa solo los tres últimos bits de la tabla: $5 = 101_2,$ $7 = 111_2.$ Para convertir un número binario a hexadecimal, separa sus bits en grupos de cuatro empezando por la derecha, añade ceros a la izquierda si el primer grupo queda incompleto y sustituye cada grupo por su cifra. Para pasar a octal, usa grupos de tres. Para la conversión inversa, escribe cada cifra con cuatro bits (o con tres en octal).
Ejemplo 15. Convierte $10110110_2$ a hexadecimal y a octal.
${10110110_2}={1011\ 0110_2}={\mathrm{B6}_{16},}$
${10110110_2}={010\ 110\ 110_2}={266_8.}$
Comprobación: ${\mathrm{B6}_{16}}={11\cdot 16 + 6}={182}$ y ${266_8}={2\cdot 64 + 6\cdot 8 + 6}={182.}$
Ejemplo 16. Escribe $\mathrm{3F}_{16}$ y $\mathrm{7E9}_{16}$ en binario, y $753_8$ en hexadecimal.
${\mathrm{3F}_{16}}={0011\ 1111_2}={111111_2,}$
${\mathrm{7E9}_{16}}={0111\ 1110\ 1001_2}={11111101001_2.}$
Entre octal y hexadecimal se pasa por el binario: $753_8 = 111\ 101\ 011_2,$ y en grupos de cuatro desde la derecha esto es $1\ 1110\ 1011_2 = \mathrm{1EB}_{16}.$ Los dos números son iguales a $491.$
Por eso a los programadores les gusta el hexadecimal: dos cifras hexadecimales son exactamente un byte, ocho bits. En una página web, un color se escribe a menudo con tres bytes: uno para el rojo, otro para el verde y otro para el azul. Por ejemplo, #FF8800 significa rojo $\mathrm{FF}_{16} = 255,$ verde $88_{16} = 136$ y azul $0,$ es decir, un tono de naranja.
Bases 12 y 60
El sistema duodecimal
Contar de doce en doce, el sistema duodecimal, sobrevive en las docenas ($12$) y las gruesas ($12^2 = 144$), en los $12$ meses del año y en las $12$ horas del reloj. Su ventaja es que $12$ tiene más divisores que $10\text{:}$ $2,$ $3,$ $4$ y $6,$ mientras que $10$ solo tiene $2$ y $5.$ Por eso las mitades, los tercios, los cuartos y los sextos se escriben con pocas cifras en base $12\text{:}$ $\frac{1}{2} = 0{,}6_{12},$ $\frac{1}{3} = 0{,}4_{12},$ $\frac{1}{4} = 0{,}3_{12},$ $\frac{1}{6} = 0{,}2_{12},$ mientras que en decimal $\frac{1}{3} = 0{,}\overline{3}$ no termina nunca. Las dos cifras adicionales para el diez y el once se escriben aquí $\mathrm{A}$ y $\mathrm{B};$ algunos libros usan otros signos, como t y e (del inglés ten y eleven).
Ejemplo 17. Convierte $143\,131$ a base $12$ y luego otra vez a decimal.
| División | Cociente | Resto |
|---|---|---|
| $143\,131 \div 12$ | $11\,927$ | $7$ |
| $11\,927 \div 12$ | $993$ | $11 = \mathrm{B}$ |
| $993 \div 12$ | $82$ | $9$ |
| $82 \div 12$ | $6$ | $10 = \mathrm{A}$ |
| $6 \div 12$ | $0$ | $6$ |
Así, $143\,131 = \mathrm{6A9B7}_{12}.$ De vuelta a decimal: ${\mathrm{6A9B7}_{12}}={6\cdot 12^4 + 10\cdot 12^3}+{9\cdot 12^2 + 11\cdot 12 + 7}={124\,416 + 17\,280}+{1296 + 132 + 7}={143\,131.}$
El sistema sexagesimal
Los babilonios contaban en base $60,$ y todavía la usamos para el tiempo y los ángulos. Aquí cada «cifra» es un número de $0$ a $59,$ escrito en decimal. Una duración de $2$ h $15$ min $30$ s es el número en base $60$ con las cifras $2,$ $15$ y $30\text{:}$ equivale a ${2\cdot 60^2 + 15\cdot 60 + 30}={8130}$ segundos. En sentido contrario, se divide entre $60\text{:}$ $10\,000 = 60\cdot 166 + 40$ y $166 = 60\cdot 2 + 46,$ así que $10\,000$ segundos son $2$ h $46$ min $40$ s. Los ángulos se miden del mismo modo: $12^\circ 30' = 12{,}5^\circ,$ ya que $30' = \frac{30}{60}$ de grado.
Bits, bytes y decimal codificado en binario
Un grupo de $8$ bits es un byte. Con $n$ bits se pueden escribir $2^n$ números distintos, de $0$ a $2^n-1.$ Un byte guarda los números de $0$ a $255;$ dos bytes, de $0$ a $65\,535;$ y $32$ bits dan $2^{32} = 4\,294\,967\,296$ valores distintos, algo más de cuatro mil millones.
Muchas calculadoras de bolsillo, relojes digitales y aparatos de medida guardan cada cifra decimal en su propio grupo de cuatro bits. Esto se llama decimal codificado en binario (BCD, del inglés binary-coded decimal). Por ejemplo, $1546$ en BCD es $0001\ 0101\ 0100\ 0110,$ un grupo para cada una de las cifras $1,$ $5,$ $4$ y $6,$ mientras que en binario puro $1546 = 11000001010_2.$ El BCD necesita más bits, aquí $16$ en lugar de $11,$ pero cada cifra que se teclea se guarda tal cual, el número es fácil de mostrar en la pantalla cifra a cifra, y una fracción decimal como $0{,}1$ se guarda de forma exacta.
Problemas para practicar
Resuelve los problemas y luego ábrelos para ver las respuestas. Puedes comprobar tus resultados con la calculadora del principio de esta página.
1. Convierte $10110_2$ a decimal.
${10110_2}={16 + 4 + 2}={22.}$ Respuesta: $22.$
2. Convierte $1111111_2$ a decimal.
Siete unos: ${1 + 2 + 4 + 8}+{16 + 32 + 64}={127,}$ o, más rápido, ${1111111_2}={2^7 - 1}={127.}$ Respuesta: $127.$
3. Convierte $45$ a binario.
${45}={32 + 8 + 4 + 1}={2^5 + 2^3 + 2^2 + 2^0.}$ Respuesta: $101101_2.$
4. Convierte $200$ a binario.
$200 = 128 + 64 + 8.$ Respuesta: $11001000_2.$
5. Convierte $777_8$ y $\mathrm{1A3}_{16}$ a decimal.
${777_8}={7\cdot 64 + 7\cdot 8 + 7}={511}={8^3 - 1}$ y ${\mathrm{1A3}_{16}}={256 + 10\cdot 16 + 3}={419.}$ Respuesta: $511$ y $419.$
6. Convierte $100$ a base $3.$
$100 = 3\cdot 33 + 1,$ $33 = 3\cdot 11 + 0,$ $11 = 3\cdot 3 + 2,$ $3 = 3\cdot 1 + 0,$ $1 = 3\cdot 0 + 1.$ Leyendo los restos de abajo hacia arriba obtenemos $10201_3.$ Comprobación: $81 + 2\cdot 9 + 1 = 100.$ Respuesta: $10201_3.$
7. Convierte $2000$ a hexadecimal.
$2000 = 16\cdot 125 + 0,$ $125 = 16\cdot 7 + 13$ y $7 = 16\cdot 0 + 7,$ con $13 = \mathrm{D}.$ Leídos de abajo hacia arriba, los restos son $7,$ $\mathrm{D},$ $0.$ Comprobación: ${7\cdot 256 + 13\cdot 16}={1792 + 208}={2000.}$ Respuesta: $\mathrm{7D0}_{16}.$
8. Convierte $11010111_2$ a octal y a hexadecimal.
$011\ 010\ 111_2 = 327_8$ y $1101\ 0111_2 = \mathrm{D7}_{16};$ los dos son iguales a $215.$ Respuesta: $327_8$ y $\mathrm{D7}_{16}.$
9. Convierte $\mathrm{3B}_{16}$ y $57_8$ a binario.
$\mathrm{3B}_{16} = 0011\ 1011_2$ y $57_8 = 101\ 111_2.$ Respuesta: $111011_2$ y $101111_2.$
10. Suma $1011_2 + 1101_2.$
De derecha a izquierda: $1 + 1 = 10_2,$ escribimos $0$ y llevamos $1;$ $1 + 0 + 1 = 10_2,$ escribimos $0$ y llevamos $1;$ $0 + 1 + 1 = 10_2,$ escribimos $0$ y llevamos $1;$ $1 + 1 + 1 = 11_2,$ escribimos $1$ y llevamos $1.$ Comprobación: $11 + 13 = 24 = 16 + 8.$ Respuesta: $11000_2.$
11. Resta $10010_2 - 1011_2.$
De derecha a izquierda: para $0 - 1$ pedimos prestado a la segunda posición: $10_2 - 1 = 1.$ Ahora la segunda columna es $0 - 1,$ y la tercera y la cuarta posiciones son $0,$ así que pedimos prestado a la quinta: esta se queda en $0,$ la cuarta y la tercera posiciones pasan a ser $1,$ y la segunda columna da $10_2 - 1 = 1.$ Luego $1 - 0 = 1,$ $1 - 1 = 0,$ $0 - 0 = 0.$ Comprobación: $18 - 11 = 7.$ Respuesta: $111_2.$
12. Multiplica $1111_2\cdot 111111_2$ y comprueba el resultado en decimal.
Las filas son $111111_2$ desplazado $0,$ $1,$ $2$ y $3$ posiciones. Súmalas una tras otra: ${111111_2 + 1111110_2}={10111101_2,}$ ${10111101_2}+{11111100_2}={110111001_2,}$ ${110111001_2}+{111111000_2}={1110110001_2.}$ Comprobación: $1111_2 = 15,$ $111111_2 = 63$ y ${15\cdot 63}={945}={512 + 256 + 128}+{32 + 16 + 1.}$ Respuesta: $1110110001_2.$
13. Divide $11110000010_2 \div 11111_2$ y comprueba el resultado en decimal.
$11110000010_2 = 1922,$ $11111_2 = 31$ y ${1922\div 31}={62}={32 + 16 + 8 + 4 + 2.}$ Respuesta: $111110_2.$
14. Convierte $0{,}375$ y $0{,}8$ a binario.
$0{,}375\cdot 2 = 0{,}75,$ $0{,}75\cdot 2 = 1{,}5,$ $0{,}5\cdot 2 = 1,$ así que $0{,}375 = 0{,}011_2.$ Para $0{,}8\text{:}$ $0{,}8\cdot 2 = 1{,}6,$ $0{,}6\cdot 2 = 1{,}2,$ $0{,}2\cdot 2 = 0{,}4,$ $0{,}4\cdot 2 = 0{,}8,$ y $0{,}8$ vuelve a aparecer. Respuesta: $0{,}011_2$ y $0{,}\overline{1100}_2.$
15. ¿Qué fracciones son $0{,}\overline{1}_2$ y $0{,}\overline{011}_2?$
Para $x = 0{,}\overline{1}_2\text{:}$ $2x = 1{,}\overline{1}_2 = 1 + x,$ así que $x = 1,$ igual que $0{,}\overline{9} = 1$ en decimal. Para $y = 0{,}\overline{011}_2\text{:}$ $8y = 11{,}\overline{011}_2 = 3 + y,$ así que $7y = 3.$ Respuesta: $1$ y $\frac{3}{7}.$
16. ¿En qué base es cierta la igualdad $13 + 5 = 20?$
En base $b$ esto significa $(b + 3) + 5 = 2b,$ así que $b = 8.$ Comprobación: $13_8 = 11,$ $11 + 5 = 16 = 20_8.$ Respuesta: en base $8.$
17. ¿Cuántos números distintos se pueden escribir con $10$ bits y cuál es el mayor de ellos?
Cada bit es $0$ o $1,$ así que hay $2^{10} = 1024$ números, de $0$ a $1111111111_2 = 2^{10} - 1.$ Respuesta: $1024$ números; el mayor es $1023.$
Mira también: números romanos · potencias y exponentes · reglas de divisibilidad

Menú