Unidad 1
Sistemas numricos
1.1 Sistemas numricos (Binario, Octal,
Decimal, Hexadecimal)
Un sistema numrico (o sistema de numeracin) es un sistema de escritura para los nmeros que
expresan, es decir, una notacin matemtica para la representacin de nmeros de un conjunto
dado, utilizando dgitos u otros smbolos de una manera consistente. Se puede observar como el
contexto que permite que los smbolos 11 debe interpretarse como el binario smbolo de tres, el
decimal smbolo de once, o un smbolo para otros nmeros en diferentes bases.
Idealmente, un sistema de numeracin deber:
Representar un til conjunto de nmeros (por ejemplo, todos los nmeros enteros o nmeros
racionales) Dar a cada nmero representa una representacin nica (o al menos una
representacin estndar) Reflejar la estructura algebraica y aritmtica de los nmeros. Por ejemplo,
la habitual decimal representacin de nmeros enteros da a cada nmero entero una
representacin nica como un finito secuencia de dgitos. Sin embargo, cuando se utiliza la
representacin decimal de los racionales nmeros o real, tales nmeros, en general, tener un
nmero infinito de representaciones, por ejemplo 2.31 tambin se puede escribir como 2.310,
2,3100000, 2,309999999, etc, todos los cuales tienen la mismo significado, excepto para algunos
contextos cientficos y otra donde una mayor precisin est implicada por un mayor nmero de
cifras que se muestran.
Sistemas de numeracin se denominan sistemas de numeracin , pero ese nombre es ambiguo, ya
que puede referirse a distintos sistemas de nmeros, tales como el sistema de los nmeros reales ,
el sistema de nmeros complejos , el sistema de p -adic nmeros , etc.
Este teorema establece la forma general de construir nmeros en un sistema de numeracin
posicional. Primero estableceremos unas definiciones bsicas:
, nmero vlido en el sistema de numeracin.
, base del sistema de numeracin. Nmero de smbolos permitidos en el sistema.
, un smbolo cualquiera de los permitidos en el sistema de numeracin.
,: nmero de dgitos de la parte entera.
, coma fraccionaria. Smbolo utilizado para separar la parte entera de un nmero de su
parte fraccionaria.
,: nmero de dgitos de la parte decimal.
La frmula general para construir un nmero N, con un nmero finito de decimales, en un sistema
de numeracin posicional de base b es la siguiente:
El valor total del nmero ser la suma de cada dgito multiplicado por la potencia de la base
correspondiente a la posicin que ocupa en el nmero.
Esta representacin posibilita la realizacin de sencillos algoritmos para la ejecucin de
operaciones aritmticas.
Ejemplo en el sistema decima
En el sistema decimal los smbolos vlidos para construir nmeros son {0,1,...9} (0 hasta 9, ambos
incluidos), por tanto la base (el nmero de smbolos vlidos en el sistema) es diez
En la figura inferior podemos ver el teorema fundamental de la numeracin aplicado al sistema
decimal.
Los dgitos a la izquierda de la coma fraccionaria representados por dn-1 ... d2 d1 d0 , toman el valor
correspondiente a las potencias positivas de la base (10 en el sistema decimal), en funcin de la
posicin que ocupan en el nmero, y representan respectivamente al dgito de las n-unidades (10 n),
centenas (10=100), decenas (10=10) y unidades (10 0=1), ya que como se ve en el grfico estn
colocados en las posiciones n-1..., tercera, segunda y primera a la izquierda de la coma
fraccionaria.
Observar que las posiciones se numeran a partir de 0, desde derecha a izquierda, por lo que la
utima posicin para un nmero de n digitos enteros, es n-1 y no n, ya que en ese caso sera
de n+1 digitos enteros. El uso de esta numeracin a partir de 0 es de utilidad, debido a que la
potencia 0-sima de cualquier nmero est definida como 1.
Los dgitos a la derecha de la coma fraccionaria d-1, d-2, d-3 ... d-n representan respectivamente al
dgito de las dcimas (10-1=0,1), centsimas (10-2=0,01), milsimas (10-3=0,001) y n-simas (10-n) .
Por ejemplo, el nmero 1492,36 en decimal, puede expresarse como:
Siguiendo con el ejemplo del cuentakilmetros visto arriba, en este caso las ruedas no tienen 10
smbolos (0 al 9) como en el caso del sistema decimal. En el sistema binario la base es 2, lo que
quiere decir que slo existen 2 smbolos {0,1} para construir todos los nmeros binarios.
En el sistema binario, para representar cifras mayores que 1 se combinan los 2 smbolos {0,1} y
agrega una segunda columna de un orden superior.
10
1
10011000
00010101
Resul 1 0 1 0 1 1 0 1
tado
Se puede convertir la operacin binaria en una operacin decimal, resolver la decimal, y despus
transformar el resultado en un (nmero) binario. Operamos como en el sistema decimal:
comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 = 10, entonces escribimos 0 en
la fila del resultado y llevamos 1 (este "1" se llama acarreo o arrastre). A continuacin se suma el
acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la columnas
(exactamente como en decimal).
En decimal, por ejemplo tienes 100-19, obviamente a 0 no le puedes quitar 9, as que debemos
tomar prestado 1 para volverlo un 10 (en decimal la base es 10), y as si 10-9=1.
En binarios pasa lo mismo, no le puedes quitar 1 a 0, debes de tomar 1 prestado al de un lado,
pero cuidado aqu viene lo complicado tu numero no se va a volver 10, recuerda que en binario la
base es 2 y por lo tanto se volver 2 en binario, y ahora s a 2 le quitas 1, 2-1=1, y continuas
restando
pero
recuerda
que
llevas
1,
porque
pediste
prestado.
Ejemplo para que le entiendas mejor, vamos a restar 201 - 67, ya sabemos que es 134, vamos a
hacerlo en binario:
1
-
0
0
1
0
0
0
0
0
1.......................201
1.......................67
Tomamos los dos ltimos nmeros, 1-1 es igual a 0, y no llevamos nada (no pedimos prestado)
1
arriba
0
1
0
0
0
0
1
1
abajo
-----------------------------------------------------------------------------------------------------------------------------------1
0
Para la siguiente columna tenemos 0 - 0, pero recuerda que tomamos 1 prestado as que en
realidad tenemos 0 - 1 (le sumamos el 1 al de abajo), de nuevo tenemos que pedir prestado y
entonces tenemos en binaria 1 0 -1 que en decimal es 2-1=1, y de nuevo llevamos 1
1
1
0
1
0
0
0
0
1
1
-----------------------------------------------------------------------------------------------------------------------------------1
1
0
Continuamos con 1 - 0 , pero como llevamos 1 tenemos ahora 1 - 1, esto si lo podemos resolver 1 1
=
1
(en
binario
y
decimal).
1
1
0
1
0
0
0
0
1
1
-----------------------------------------------------------------------------------------------------------------------------------0
1
1
0
Lo
0
0
1
1
dems
1
-
1
0
es
-
0
1
0
0
muy
1
0
0
0
fcil:
0=0
0=0
1=0
0=1
0
0
1
1
0 1
0 0 0
1 0 1
El algoritmo del producto en binario es igual que en nmeros decimales; aunque se lleva a
cabo con ms sencillez, ya que el 0 multiplicado por cualquier nmero da 0, y el 1 es el
elemento neutro del producto. Por ejemplo, multipliquemos 10110 por 1001:
10110 X 1001
10110
00000
00000
10110
11000110
Divisin de nmeros binarios La divisin en binario es similar al decimal; la nica
diferencia es que a la hora de hacer las restas, dentro de la divisin, stas deben ser
realizadas en binario. Ejemplo
Dividir 100010010 (274) entre 1101 (13):
100010010 |1101
-0000
010101
10001
-1101
P, ceros.
Los siguientes y bits se completan con:
A, ceros.
S, ceros.
P, el multiplicador.
Para finalizar la matriz, se inician a 0 todos los valores de la ltima columna.
Una vez iniciada esta matriz, se realiza el algoritmo.
Se realizan y iteraciones del siguiente bucle.Comparar los dos bits menos significativos de P, para
realizar la siguiente accin:
00 o 11: no se hace nada.
01: P = P + A. Se ignora el desbordamiento (overflow).
10: P = P + S. Se ignora el desbordamiento.
Desplazamiento aritmtico de P a la derecha (se conserva el bit de signo).
Finalmente, tras y iteraciones, se elimina (mediante un desplazamiento) el ltimo bit de la derecha
(menos significativo), obteniendo el resultado.