
UNIDAD III.SISTEMAS NUMÉRICOS
3.1 DEFINICIÓN.
Los sistemas de numeración son conjuntos de dígitos usados para representar cantidades, así se tienen los sistemas de numeración decimal, binario, octal, hexadecimal, romano, etc. Los cuatro primeros se caracterizan por tener una base (número de dígitos diferentes: diez, dos, ocho, dieciseis respectivamente) mientras que el sistema romano no posee base y resulta más complicado su manejo tanto con números, así como en las operaciones básicas.
Los sistemas de numeración que poseen una base tienen la característica de cumplir con la notación posicional, es decir, la posición de cada número le da un valor o peso, así el primer dígito de derecha a izquierda después del punto decimal, tiene un valor igual a b veces el valor del dígito, y así el dígito tiene en la posición n un valor igual a: (bn) * A
donde:
b = valor de la base del sistema
n = número del dígito o posición del mismo
A = dígito
3.2 SISTEMAS POSICIÓNALES.
3.3 REPRESENTACIÓN POLINOMIAL.
representación del número usando un
polinomio.
– 2001 = 2 x 103 + 0 x 102 + 0 x 101+ 1 x 100 = 2000 + 1
– 2.53 = 2 x 100 + 5 x 10-1 + 3 x 10-2 = 2 + 1/5 + 1/9
Notación polinomial
• Un número N escrito en representación yuxtaposicional, puede ser escrito en forma
polinomial, de la siguiente manera:
N = (an-2, an-1 , a0 , a-1 , a-2)r
N = ax rn-1 + a x rn-2 + ...+ axr0 + ax r-1 + ax r-2 +...+ axr-m
r = base
a= dígito
n = número de dígitos enteros
m = número de dígitos fraccionarios
3.4 REPRESENTACIÓN YUXTAPOSICIONAL.
Una yuxtaposición consiste en poner un
símbolo al lado de otro. Al final poner un subíndice de la
base: 410710
– 2001 = (23, 02 , 01 , 10) 10
– 2.53 = (20, 5-1 , 3-2) 10
Notación yuxtaposicional
• En general un número N, en base r, se puede representar en notación yuxtaposicional
(posicional) de la siguiente manera:
N = (an-2, an-1 , a0 , a-1 , a-2)r
r = base
ai= dígito n-1 <= i <= -m
n = número de dígitos enteros
m = número de dígitos fraccionarios
3.5 TRANSFORMACIÓN A DIFERENTES SISTEMAS
NÚMERICOS.
Los ordenadores trabajan internamente con dos niveles de voltaje, por lo que su sistema de numeración natural es el sistema binario (encendido 1, apagado 0).
Un número binario puede ser representado por cualquier secuencia de bits (dígitos binarios), que a su vez pueden ser representados por cualquier mecanismo capaz de estar en dos estados mutuamente exclusivos. Las secuencias siguientes de símbolos podrían ser interpretadas todas como el mismo valor binario numérico:
El valor numérico representado en cada caso depende del valor asignado a cada símbolo. En un ordenador, los valores numéricos pueden ser representados por dos voltajes diferentes y también se pueden usar polaridades magnéticas sobre un disco magnético. Un "positivo", "sí", o "sobre el estado" no es necesariamente el equivalente al valor numérico de uno; esto depende de la arquitectura usada.
De acuerdo con la representación acostumbrada de cifras que usan números árabes, los números binarios comúnmente son escritos usando los símbolos 0 y 1. Cuando son escritos, los números binarios son a menudo subindicados, prefijados o sufijados para indicar su base, o la raíz. Las notaciones siguientes son equivalentes:
-
100101 binario (declaración explícita de formato)
-
100101b (un sufijo que indica formato binario)
-
100101B (un sufijo que indica formato binario)
-
bin 100101 (un prefijo que indica formato binario)
-
1001012 (un subíndice que indica base 2 (binaria) notación)
-
%100101 (un prefijo que indica formato binario)
-
0b100101 (un prefijo que indica formato binario, común en lenguajes de programación)
Operaciones con números binarios
Suma de números Binarios
Las posibles combinaciones al sumar dos bits son
-
0 + 0 = 0
-
0 + 1 = 1
-
1 + 0 = 1
-
1 + 1 = 10
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 continuación se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la columnas (exactamente como en decimal).
Resta de números binarios
El algoritmo de la resta en binario es el mismo que en el sistema decimal. Pero conviene repasar la operación de restar en decimal para comprender la operación binaria, que es más sencilla. Los términos que intervienen en la resta se llaman minuendo, sustraendo y diferencia.
Las restas básicas 0-0, 1-0 y 1-1 son evidentes:
La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada de la posición siguiente: 10 - 1 = 1 y me llevo 1, lo que equivale a decir en decimal, 2 - 1 = 1. Esa unidad prestada debe devolverse, sumándola, a la posición siguiente. Veamos algunos ejemplos:
Restamos 17 - 10 = 7 (2=345) Restamos 217 - 171 = 46 (3=690)
A pesar de lo sencillo que es el procedimiento, es fácil confundirse. Tenemos interiorizado el sistema decimal y hemos aprendido a restar mecánicamente, sin detenernos a pensar en el significado del arrastre. Para simplificar las restas y reducir la posibilidad de cometer errores hay varias soluciones:
100110011101 1001 1001 1101
-010101110010 -0101 -0111 -0010
————————————— = ————— ————— —————
010000101011 0100 0010 1011
-
Utilizando el complemento a dos. La resta de dos números binarios puede obtenerse sumando al minuendo el complemento a dos del sustraendo. Veamos algunos ejemplos. Hagamos la siguiente resta, 91 - 46 = 45, en binario:
-0101110 C2 de 46 = 1010010 +1010010
En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el número resultante no puede ser más largo que el minuendo, el bit sobrante se desprecia.
Un último ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el complemento a dos:
-00010111 C2 de 23 = 11101001 +11101001
Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario, 196 en decimal.
Producto de números binarios
El algoritmo del producto en binario es igual que en números decimales; aunque se lleva cabo con más sencillez, ya que el 0 multiplicado por cualquier número da 0, y el 1 es el elemento neutro del producto.
Por ejemplo, multipliquemos 10110 por 1001:
En sistemas electrónicos, donde se suelen utilizar números mayores, no se utiliza este método sino otro llamado algoritmo de Booth.
División de números binarios
La división en binario es similar a la decimal, la única diferencia es que a la hora de hacer las restas, dentro de la división, estas deben ser realizadas en binario. Por ejemplo, vamos a dividir 100010010 (274) entre 1101 (13):
Conversión entre binario y decimal, binario y octal, y binario y hexadecimal
Binario a decimal
Para realizar la conversión de binario a decimal, realice lo siguiente:
-
Inicie por el lado derecho del número en binario, cada número multiplíquelo por 2 y elévelo a la potencia consecutiva (comenzando por la potencia 0).
-
Después de realizar cada una de las multiplicaciones, sume todas y el número resultante será el equivalente al sistema decimal.
Ejemplos:
Decimal a binario
Se divide el número decimal entre 2 cuyo resultado entero se vuelve a dividir entre 2 y así sucesivamente. Una vez llegados al 1 indivisible se cuentan el último cociente, es decir el uno final (todo número binario excepto el 0 empieza por uno), seguido de los residuos de las divisiones subsiguientes. Del más reciente hasta el primero que resultó. Este número será el binario que buscamos. A continuación se puede ver un ejemplo con el número decimal 100 pasado a binario.
Otra forma de conversión consiste en un método parecido a la factorización en números primos. Es relativamente fácil dividir cualquier número entre 2. Este método consiste también en divisiones sucesivas. Dependiendo de si el número es par o impar, colocaremos un cero o un uno en la columna de la derecha. Si es impar, le restaremos uno y seguiremos dividiendo por dos, hasta llegar a 1. Después sólo nos queda tomar el último resultado de la columna izquierda (que siempre será 1) y todos los de la columna de la derecha y ordenar los dígitos de abajo a arriba. Y luego se haría un cuadro con las potencias con el resultado.
Ejemplo:
25|1 --> 1, 25-1=24 y seguimos dividiendo por 2
Y también tenemos otro método el método de distribución en el que distribuimos el número decimal y podemos tener el resultado en binario, trabaja de la siguiente manera tenemos el número 151 lo que tenemos que hacer es distribuir este número buscando el número más próximo; en este caso es 128 así que en la casilla donde hay capacidad de contener el número que tenemos lo vamos marcando. y en las casillas que no empleamos las marcaremos con un 0.
Ejemplo:
2^7= 128|1 128+16+4+2+1=151
Y sucesivos.
Binario a octal
Para realizar la conversión de binario a octal, realice lo siguiente:
1) Agrupe la cantidad binaria en grupos de 3 en 3 iniciando por el lado derecho. Si al terminar de agrupar no completa 3 dígitos, entonces agregue ceros a la izquierda.
2) Posteriormente vea el valor que corresponde de acuerdo a la tabla:
Número en binario
|
000
|
001
|
010
|
011
|
100
|
101
|
110
|
111
|
Número en octal
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
3) La cantidad correspondiente en octal se agrupa de izquierda a derecha.
Ejemplos:
Agrupe de izquierda a derecha: 67
11 entonces agregue un cero, con lo que se obtiene 011 = 3
Agrupe de izquierda a derecha: 317
1 entonces agregue 001 = 1
Agrupe de izquierda a derecha: 103.
Octal a binario
Cada dígito octal se lo convierte en su binario equivalente de 3 bits y se juntan en el mismo orden. Ejemplo:
Binario a hexadecimal
Para realizar la conversión de binario a hexadecimal, realice lo siguiente:
1) Agrupe la cantidad binaria en grupos de 4 en 4 iniciando por el lado derecho. Si al terminar de agrupar no completa 4 dígitos, entonces agregue ceros a la izquierda.
2) Posteriormente vea el valor que corresponde de acuerdo a la tabla:
Número en binario
|
0000
|
0001
|
0010
|
0011
|
0100
|
0101
|
0110
|
0111
|
1000
|
1001
|
1010
|
1011
|
1100
|
1101
|
1110
|
1111
|
Número en hexadecimal
|
0
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
A
|
B
|
C
|
D
|
E
|
F
|
3) La cantidad correspondiente en hexadecimal se agrupa de izquierda a derecha.
Ejemplos:
1 entonces agregue 0001 = 1
Agrupe de izquierda a derecha: 1BA
110 entonces agregue 0110 = 6
Agrupe de izquierda a derercha: 6F5
Hexadecimal a binario
Ídem que para pasar de hexadecimal a binario, solo que se remplaza por el equivalente de 4 bits, como de octal a binario.
Tabla de conversión entre decimal, binario, hexadecimal, octal, BCD, Exceso 3 y Gray o Reflejado
Decimal
|
Binario
|
|
|
|
|
|
0
|
0000
|
0
|
0
|
0000
|
0011
|
0000
|
1
|
0001
|
1
|
1
|
0001
|
0100
|
0001
|
2
|
0010
|
2
|
2
|
0010
|
0101
|
0011
|
3
|
0011
|
3
|
3
|
0011
|
0110
|
0010
|
4
|
0100
|
4
|
4
|
0100
|
0111
|
0110
|
5
|
0101
|
5
|
5
|
0101
|
1000
|
0111
|
6
|
0110
|
6
|
6
|
0110
|
1001
|
0101
|
7
|
0111
|
7
|
7
|
0111
|
1010
|
0100
|
8
|
1000
|
8
|
10
|
1000
|
1011
|
1100
|
9
|
1001
|
9
|
11
|
1001
|
1100
|
1101
|
10
|
1010
|
A
|
12
|
11
|
1011
|
B
|
13
|
12
|
1100
|
C
|
14
|
13
|
1101
|
D
|
15
|
14
|
1110
|
E
|
16
|
15
|
1111
|
F
|
17
|
3.5.1 BASE 10 A BASE “R”
Para convertir un número decimal entero a base r se utiliza el método de división repetida, por medio del
cual se divide el número base 10 entre r y el cociente se vuelve a dividir entre r hasta que sea igual a 0. Los
residuos de cada división representa los dígitos base r del menor significativo al mayor significativo.
Para la conversión de una fracción decimal a base r se realiza la multiplicación de la parte fraccionaria
del número decimal por r. Se toma la parte entera del resultado y la fraccionaria se multiplica nuevamente.
3.5.2 DE BASE “R” A BASE 10
Este procedimiento consiste en usar la expresión expresando todas las cantidades involucradas en decimal.
Ejemplo. Convertir (B2A)16 a base 10.
Expresando el número en notación polinomial usando base 10 para representar cada cantidad
involucrada en dicha notación:
(B2A)16 = (1*162 + 2*161 + 10*160)10
= (11*256 + 2*16 + 10 )10
= (2858)10 q
Ejemplo Convertir (11011)2, a base 10
En forma similar al ejemplo anterior
(11011)2 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20
=16 + 8 + 0 + 2 + 1
= (27)10 q
(en este caso y en los sucesivos se han obviado los paréntesis y el subíndice 10 para indicar decimal,
excepto hasta el resultado final).
Ejemplo Convertir (12101.121)3 a decimal
(12101.11)3 = 1*34 + 2*33 + 1*32 + 0*31 + 1*30 + 1*3-1 + 2*3-2 + 1*3-3
= 1*81 + 2*27 + 1*9 + 0 + 1 + 1/3 + 2/9 + 1/27
= (145.592592...)10 q
3.5.3 CONVERSIÓN DE BASE “R” A BASE “S”
Un número binario x puede convertirse en decimal efectuando la suma de las potencias cuyo valor es uno.
Ejemplo :
(1010.011)2 = 1*23+0*22+1*21+0*20+0*2–1+1*2–2+1*2–3
Para los números expresados en base r podríamos efectuar su conversión a decimal multiplicando cada coeficiente por la potencia correspondiente de r y sumando.
Ejemplo :
(630.4)8 = 6*82+3*81+0*80+4*8–1
Cuando deseamos efectuar la conversión de decimal a binario o ha cualquier otro sistema con base r es mas conveniente si el número se separa en parte entera y en una parte fraccionaria, y la conversión de cada parte se efectúa por separado :
Ejemplo :
Convertir el numero (41)10 a binario
Para convertir cualquier entero decimal han cualquier sistema de base r la división se hace entre r en lugar de 2.
Ejemplo :
Convertir el numero (153)10 a base 8
153 1 LSB 198 3
Para convertir una fracción decimal a binario, el sistema que se sigue es similar al que utilizamos para los enteros, sin embargo, se usa la multiplicación en lugar de la división, y los enteros se acumulan en lugar de los residuos.
Ejemplo :
convertir (0.6875)10 a base 2
Entero Fracción Coeficiente
0.6875 *2 1 0.3750 a-1 = 1
Cuando deseamos convertir una fracción decimal en número expresado en base r, el procedimiento es similar, la multiplicación se hace con r en lugar de 2 y los coeficientes se encuentran con los enteros.
Ejemplo :
convertir (0.513)10 a base 8
Entero Fracción Coeficiente 0.513 * 8 4 0.104 a-1 = 4 0.104 * 8 0 0.832 a-2 = 0 0.832 * 8 6 0.656 a-3 = 6 0.656 * 8 5 0.248 a-4 = 5 0.248 * 8 1 0.984 a-5 = 1 0.984 * 8 7 0.872 a-6 = 7
Cuando deseamos hacer la conversión de un número decimal de una parte entera y una parte fraccionaria la conversión se hace por separado y posteriormente se combinan las dos respuestas.
Ejemplo :
(41.6875)10 → (101001.1011)2
Números octales y hexadecimales.
Las conversiones entre código binario, octal y hexadecimal es muy importante en las comparaciones digitales, ya que cada dígito octal corresponde a tres dígitos binarios y a cada dígito hexadecimal corresponde cuatro dígitos binarios.
(10110001101011.111100000110)2 → (26153.7406)8
Cuando deseamos convertir un número binario a hexadecimal, el proceso es similar excepto que el número binario se divide en grupos de 4.
(10110001101011.11110010)2 → (2C6B.F2)16
La conversión a hexadecimal en binario se realiza con un procedimiento inverso al anterior esto es ; cada dígito octal se convierte en su equivalente binario de tres dígitos y cada dígito hexadecimal se convierte en su equivalente binario de cuatro dígitos.
Ejemplo :
(613.124)8 → (110001011.001010100)2 (306.D)16 →(001100000110.1101)2
Los números binarios son difíciles de manejar ya que se requiere dos o cuatro veces mas dígitos que su equivalente decimal.
Ejemplo :
(111111111111)2 → (4095)10
Una forma de reducir esta deficiencia es emplear la relación entre el sistema de números binarios con el sistema octal o hexadecimal.
El número binario (111111111111)2 tiene 12 dígitos y los podemos expresar en octal (7777)8 (cuatro dígitos) o en hexadecimal como (FFF)16 (tres dígitos), la representación octal o hexadecimal es mas deseable ya que se representa en forma mas compacta, como un tercio o un cuarto del número de dígitos requeridos por el número binario equivalente.
|