Cuando trabajamos con ordenadores, una de las primeras cosas que vamos a necesitar es almacenar números enteros (y así se necesitó en su día en su momento).
Recordemos que los números enteros incluyen:
- Los números naturales positivos (1, 2, 3…)
- El cero (0, aquí un cero, míralo que majo, todo redondito)
- Los números negativos (-1, -2, -3…)
Pero como sabemos, internamente nuestro ordenador solo sabe de números en sistema binario. Así que vamos a tener que ver cómo podemos representar nuestros números en este sistema.
De momento, en este artículo vamos a ver cómo codificar números enteros positivos y el cero (en el siguiente artículo hablaremos de números negativos).
Representación de enteros positivos en binario
La representación de enteros positivos es la más sencilla de todas. Realmente no tiene mucho misterio, es simplemente contar hacía arriba (da igual que sea Base 2, Base 10, o Base “lo que sea”).
Pero vamos a escribirlo en unas pautas:
- El cero, es el cero, en cualquier base
- A partir de ahí incrementamos en función de la base en la que trabajemos
Por ejemplo así serían los 16 primeros números positivos representados, contando con el cero, representados en sistema Decimal y Binario:
Decimal | Binario |
---|---|
0 | 0000 |
1 | 0001 |
2 | 0010 |
3 | 0011 |
4 | 0100 |
5 | 0101 |
6 | 0110 |
7 | 0111 |
8 | 1000 |
9 | 1001 |
10 | 1010 |
11 | 1011 |
12 | 1100 |
13 | 1101 |
14 | 1110 |
15 | 1111 |
Para cambiar de uno a otro únicamente tenemos que cambiar de base, como ya vimos en este artículo.
¿Cuánto vale un número binario?
Importante, paro hacer hacer una reflexión que no me voy a cansar de repetir. No confundir un número con su representación.
Lo repito mucho porque, si entendéis eso, os quitaréis muchisimos problemas y errores para entender todo esto
Cuando tu ves un número en sistema binario, por ejemplo:
10011001
¿Cuánto vale ese conjunto de bits? No lo sabes, no significa nada hasta que no me digas que está representando.
Así, será cosas distintas si:
- Representa un número entero
- Representa un número con positivos y negativos
- Representa un número fraccionario
- Representa otra cosa …
Eso sí, si no me dices nada, lo lógico es que voy a asumir que te refieres a un número positivo, porque es el más sencillo. Así que el número de antes vale 153, si no me dices nada más.