sábado, 22 de septiembre de 2018

Competencia no: 1 (Sistemas Numéricos)

1.1 TIPOS DE SISTEMAS NUMÉRICOS


Primero  que nada hay que empezar por saber lo que es un sistema numérico. Los sistemas numéricos son un grupo de reglas, normas y convenios que nos permiten la representación de todos los números naturales, esto es por medio de un grupo amplio de símbolos básicos, se caracterizan por su base que indican el número de símbolo distinto que utiliza y además es el coeficiente que determina  cual es el valor de cada símbolo dependiendo  de la posición que ocupe. También se caracterizan por tener dígitos enteros y fraccionarios.

A continuación pondré los distintos tipos de Sistemas Numéricos y algunos ejemplos para poder comprenderlo mejor.
·         Sistema Decimal:

Es el sistema que se utiliza de manera más habitual la base es de 10 y se conforma por diez dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. El valor de cualquier número expresado en este sistema es igual a la suma de los términos que resulten de multiplicar cada uno de los dígitos  que constituyen el número en cuestión por la potencia de 10 que corresponda según la posición que ocupe dicho dígito dentro del número.

Un ejemplo para poder comprenderlo sería poniendo el número 1264, como podemos observar tiene cuatro cifras. En el sistema decimal se construye de la siguiente manera, esto respetando las posiciones correspondientes.

1264= 1x10³ + 2x10² + 6x10¹ + 4x10º


·     SISTEMA BINARIO:


En el sistema binario la base es de 2, por lo tanto solo se requieren de dos cifras, estos serían el 0 y el 1. Las cifras 0 y 1 tienen el mismo significado que en el decimal pro estos difieren en cuanto a la posición que ocupan.

En el sistema binario el dígito individual representa el coeficiente de las potencias de 2 en lugar de las de diez como en el sistema decimal.
 El valor de cualquier número expresado en el sistema binario es igual a la suma de los términos que resulten de multiplicar cada uno de los dígitos que constituyen el número en cuestión por las potencias de 2 que correspondan según la posición que ocupe dicho dígito dentro del número.

Un ejemplo seria representar el número 19 en binario que se escribe como 10011 ya que:

10011= 1 x 24 + 0 x 23 + 0 x 22 + 1 x 21 + 1 x 20
10011= 16 + 0 + 0 + 2 + 1 = 19



SISTEMA OCTAL:


El sistema numérico octal tiene como base 8 dígitos o símbolos, para representar cantidades y cifras numéricas, los dígitos son: 0, 1, 2, 3, 4, 5, 6 ,7. 
Este sistema es muy usado en computación ya que es muy fácil convertir un número binario en octal y viceversa.
Por ejemplo el número 11, dependiendo del sistema en que se represente tiene diferente valor, el 11 binario equivale al 3 decimal y a 3 en octal; el número 1111 binario equivale al número 15 en decimal y al 17 en octal, lo que se expresa de la siguiente forma:   1111 = 17 = 15₁₀



             SISTEMA HEXADECIMAL:


La base de este sistema es de 16 cifras, para expresar o representar cualquier número, los primeros diez dígitos de este sistema coinciden con los del sistema numérico decimal y los restantes seis números se toman como las seis primeras letras del alfabeto, estas se toman en forma mayúscula, entonces quedaría de la siguiente forma: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,  A, B, C, D, E, F.

Aquí por primera vez se verán combinaciones de dígitos, uno de los cuales puede ser una letra pero que para los efectos del sistema hexadecimal es considerado como un número. El valor de cualquier número expresado en el sistema hexadecimal es igual a la suma de los términos que resulten de multiplicar a cada uno de los dígitos que constituyen el número en cuestión por la potencia de 16  que corresponda según la posición que ocupe dicho dígito dentro del número.

Este sistema posee dos grandes ventajas en cuanto al entorno informático:
§   Crea una simplificación en la escritura de los números decimales, ya que cada 4 cifras binarias se presenta simplemente por una hexadecimal.

§  Cada cifra hexadecimal se puede expresar por cuatro cifras binarias, con lo que la transposición entre estos dos sistemas se facilita considerablemente.





1.2 CONVERSIONES ENTRE SISTEMAS NUMÉRICOS 




SISTEMA NUMÉRICO DE BASE 10

(DECIMAL)


Los sistemas numéricos están compuestos por símbolos y por las normas utilizadas para interpretar estos símbolos. El sistema numérico que se usa más a menudo es el sistema numérico decimal, o de Base 10. El sistema numérico de Base 10 usa diez símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9. Estos símbolos se pueden combinar para representar todos los valores numéricos posibles.


 El sistema numérico decimal se basa en potencias de 10. Cada posición de columna de un valor, pasando de derecha a izquierda, se multiplica por el número 10, que es el número de base, elevado a una potencia, que es el exponente. La potencia a la que se eleva ese 10 depende de su posición a la izquierda de la coma decimal. Cuando un número decimal se lee de derecha a izquierda, el primer número o el número que se ubica más a la derecha representa 100 (1), mientras que la segunda posición representa 101 (10 x 1= 10) La tercera posición representa 102 (10 x 10 =100). La séptima posición a la izquierda representa 106 (10 x 10 x 10 x 10 x 10 x 10 =1.000.000). Esto siempre funciona, sin importar la cantidad de columnas que tenga el número.




Ejemplo: 

2134 = (2x10 potencia 3) + (1x10 potencia 2) + (3x10 potencia 1) + (4x10 potencia 0) 

Hay un 4 en la posición correspondiente a las unidades, un 3 en la posición de las decenas, un 1 en la posición de las centenas y un 2 en la posición de los miles. Este ejemplo parece obvio cuando se usa el sistema numérico decimal. Es importante saber exactamente cómo funciona el sistema decimal, ya que este conocimiento permite entender los otros dos sistemas numéricos, el sistema numérico de Base 2 y el sistema numérico hexadecimal de Base 16. Estos sistemas usan los mismos métodos que el sistema decimal.



SISTEMA NUMÉRICO DE BASE 2 (BINARIO)

Los computadores reconocen y procesan datos utilizando el sistema numérico binario, o de Base 2.  El sistema numérico binario usa sólo dos símbolos, 0 y 1, en lugar de los diez símbolos que se utilizan en el sistema numérico decimal. La posición, o el lugar, que ocupa cada dígito de derecha a izquierda en el sistema numérico binario representan 2, el número de base, elevado a una potencia o exponente, comenzando desde 0. Estos valores posicionales son, de derecha a izquierda, 2 potencia 0, 2 potencia 1, 2 potencia 2, 2 potencia 3, 2 potencia 4, 2 potencia 5, 2 potencia 6 y 2 potencia 7, o sea, 1, 2, 4, 8, 16, 32, 64 y 128, respectivamente. 



Ejemplo: 

101102 = (1 x 2 potencia 4 = 16) + (0 x 2 potencia 3 = 0) + (1 x 2 potencia 2 = 4) + (1 x 2 potencia 1= 2)+(0 x 2 potencia 0 = 0) = 22 (16 + 0 + 4 + 2 +  0) 

Al leer el número binario (101102) de izquierda a derecha, se nota que hay un 1 en la posición del 16, un 0 en la posición del 8, un 1 en la posición del 4, un 1 en la posición del 2 y un 0 en la posición del 1, que sumados dan el número decimal 22.

El número Ciento un mil ciento dos se escribe 11000101011101110 en Sistema Binario


SISTEMA NUMÉRICO DE BASE 8 (OCTAL)  

                 
El inconveniente de la codificación binaria es que la representación de algunos números resulta muy larga. Por este motivo se utilizan otros sistemas de numeración que resulten más cómodos de escribir: el sistema octal y el sistema hexadecimal. Afortunadamente, resulta muy fácil convertir un número binario a octal y hexadecimal.

En el sistema octal, usa ocho dígitos diferentes: 0, 1, 2, 3, 4, 5, 6 y 7.Cada posición de columna de un valor, pasando de derecha a izquierda, se multiplica por el número 8, que es el número de base, elevado a una potencia, que es el exponente. Cada dígito tiene, naturalmente, un valor distinto dependiendo del lu­gar que ocupen. El valor de cada una de las posiciones viene determinado por las potencias de base 8.


Ejemplo:

El número octal 2738 = 2*8 potencia 2 +  7*8 potencia 1 + 3*8 potencia 0 = 2*64 + 7*8 + 3*1 = 187


SISTEMA NUMÉRICO DE BASE (Hexadecimal)

El sistema hexadecimal usa dieciséis símbolos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Se utilizan los caracteres A, B, C, D, E y F representando las cantidades decima­les 10, 11, 12, 13, 14 y 15 respectivamente, porque no hay dígitos mayores que 9 en el sistema decimal. Cada dígito tiene, naturalmente, un valor distinto dependiendo del lu­gar que ocupen. El valor de cada una de las posiciones viene determinado por las potencias de base 16.



CONVERSIÓN DE DECIMAL A BINARIO



El fin de obtener el número decimal a binario es realizar lo siguiente:
Convertir un número decimal al sistema binario es muy sencillo: basta con realizar divisiones sucesivas por 2 y escribir los restos obtenidos en cada división en orden inverso al que han sido obtenidos.
Por ejemplo, para convertir al sistema binario el número decimal 77 haremos una serie de divisiones que arrojaron los restos siguientes:
77 / 2 = 38 Resto: 1
38 / 2 = 19 Resto: 0
19 / 2 = 9 Resto: 1
9 / 2 = 4 Resto: 1
4 / 2 = 2 Resto: 0
2 / 2 = 1 Resto: 0
1 / 2 = 0 Resto: 1
y, tomando los restos en orden inverso obtenemos la cifra binaria:

Decimal 77 = Binario 1001101.


CONVERSIÓN DE DECIMAL A OCTAL


La conversión de un número decimal a octal se hace con la misma técnica que ya hemos utilizado en la conversión a binario, mediante divisiones sucesivas por 8 y colocando los restos obtenidos en orden inverso. Por ejemplo, para escribir en octal el número decimal 12210 tendremos que hacer las siguientes divisiones:

122 / 8 = 15     Resto: 2
15 / 8 = 1           Resto: 7
1 / 8 = 0               Resto: 1
Tomando los restos obtenidos en orden inverso tendremos la cifra octal:
                                        
Decimal 122 =  Octal 172


CONVERSIÓN DE DECIMAL A HEXADECIMAL


Utilizando la técnica habitual de divisiones sucesivas, la conversión de un número decimal a hexadecimal. Por ejemplo, para convertir a hexadecimal del número decimal 1735 será necesario hacer las siguientes divisiones:


1735 / 16 = 108    Resto: 7
108 / 16 = 6           Resto: C es decir, 12 en decimal
6 / 16 = 0                Resto: 6

De ahí que, tomando los restos en orden inverso, resolvemos el número en hexadecimal:

Decimal 1735 = hexadecimal 6C7


CONVERSIÓN DE OCTAL A BINARIO


Observa la tabla siguiente, con los siete primeros números expresados en los sistemas decimal, binario y octal:


Cada dígito de un número octal se representa con tres dígitos en el sistema binario. Por tanto, el modo de convertir un número entre estos sistemas de numeración equivale a "expandir" cada dígito octal a tres dígitos bi­narios, o en "contraer" grupos de tres caracteres binarios a su correspondiente dígito octal.

Por ejemplo, para convertir el número binario 101001011 a octal tomaremos grupos de tres bits y los sustituiremos por su equivalente octal:

101 = 5 octal
001 = 1 octal
011 = 3 octal
Y, de ese modo el número binario 101001011 = octal 513

La conversión de números octales a binarios se hace, siguiendo el mismo método, reemplazando cada dígito octal por los tres bits equivalentes. Por ejemplo, para convertir el número octal 750 a binario, tomaremos el equivalente binario de cada uno de sus dígitos: 

7 octal = 111
5 octal = 101
0 octal = 000

Y, por tanto el número octal 750 = 111101000 binario

CONVERSIÓN DE BINARIO A HEXADECIMAL Y VICEVERSA


Del mismo modo que hayamos la correspondencia entre números octales y binarios, podemos establecer una equivalencia directa entre cada dígito hexadecimal y cuatro dígitos binarios, como se ve en la siguiente tabla:


La conversión entre números hexadecimales y binarios se realiza "expandiendo" o "con­trayendo" cada dígito hexadecimal a cuatro dígitos binarios. Por ejemplo, para expresar en hexadecimal el número binario 101001110011 bastará con tomar grupos de cuatro bits, empezando por la derecha, y reemplazarlos por su equivalente hexadecimal:  

1010 = A
0111 = 7
0011 = 3

Y, por tanto el número binario 101001110011 = al hexadecimal A73

En caso de que los dígitos binarios no formen grupos completos de cuatro dígitos, se deben añadir ceros a la izquierda hasta completar el último grupo. Por ejemplo:
101110 = 00101110 = 2E en hexadecimal

La conversión de números hexadecimales a binarios se hace del mismo modo, reemplazando cada dígito hexadecimal por los cuatro bits equivalentes de la tabla. Para convertir a binario, por ejemplo, el número hexadecimal 1F6 hallaremos en la tabla las siguientes equivalencias:

1 = 0001
F = 1111
6 = 0110

Y, por lo tanto el número hexadecimal 1F6 = al binario 000111110110




1.3 OPERACIONES BÁSICAS


OPERACIONES CON NÚMEROS BINARIOS

Las posibles combinaciones al sumar dos bits son
  • 0 + 0 = 0
  • 0 + 1 = 1
  • 1 + 0 = 1
  • 1 + 1 = 10
100110101
+ 11010101
1000001010
———————————

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  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:
  • 0 - 0 = 0
  • 1 - 0 = 1
  • 1 - 1 = 0
  • 0 - 1 = no cabe o se pide prestado al próximo.
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ándose, a la posición siguiente. Veamos algunos ejemplos:
Restamos 17 - 10 = 7 (2=345)          Restamos 217 - 171 = 46 (3=690)

10001 11011001
-01010 -10101011
01111 00101110
—————— —————————


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:
  • Dividir los números largos en grupos. En el siguiente ejemplo, vemos cómo se divide una resta larga en tres restas cortas:
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:
1011011 1011011
-0101110 C2 de 46 = 1010010 +1010010
0101101 10101101
———————— ————————


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:

11011011 11011011
-00010111 C2 de 23 = 11101001 +11101001
————————— —————————
11000100 111000100


Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario, 196 en decimal.

  • Utilizando el complemento a 1. La resta de dos números binarios puede obtenerse sumando al minuendo el complemento a uno del sustraendo y a su vez sumarle el bit de overflow (bit que se desborda)

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:

10110
1001
—————————
00000
10110
10110
00000
—————————
11000110

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):


100010010 |1101
——————
- 0000 010101
10001
———————
- 1101
- 0000
———————
01000
00111
———————
10000
———————
- 1101
- 0000
00001
———————
01110
———————
- 1101

OPERACIONES CON NÚMEROS HEXADECIMALES

SUMA

  • ·         8 + 8 = 16


Cómo el resultado no está entre el 0 y el 15, debemos de restar 16 al resultado y nos llevamos 1. Entonces
  • ·         16 – 16 = 0; por lo tanto 8 + 8 será 10 (en el sistema hexadecimal)
  • ·         A + 8 = 18


Al igual que en el caso anterior, cómo el resultado supera el 15, debemos de restar 16. Por lo tanto
  • ·         18 – 16 = 2; el resultado de A + 7 será 12 (hexadecimal)
  • ·         A + A = 20


Al igual que en los casos anteriores, debemos de restar 16
  • ·         20 – 16 = 4; el resultado de A + A será 14 (hexadecimal)
  • ·         F + D = 28


Debemos de restar 16

28 – 16 = 12; por lo que el resultado de F + D será 1C (debemos tener cuidado de cuando utilizar las letras, ya que el 12 en hexadecimal es C)


RESTA


En la resta las cosas se complican un poco. Para poder realizar la resta de dos números hexadecimales debemos sumar al minuendo el complemento a la quince del sustraendo y, finalmente, sumarle 1 (el bit de overflow que desborda).
Aquí dejaremos un claro ejemplo de cómo se realiza la resta:

  • ·         4AFC9 – DE8


Primero, el minuendo y el sustraendo deben de tener la misma cantidad de números. Por esto, añadiremos 0 para que ambos tengan la misma cantidad

  • ·         4AFC9 – 00DE8

Luego, debemos de crear un nuevo número con la misma cantidad de números que posee el sustraendo. Este debe ser el mayor del sistema hexadecimal, que al ser 15 corresponde a la letra F. La resta se hace siguiendo las normas generales, con cada valor que corresponde a cada letra a operar.

  • ·         FFFFF – 00DE8 = FF217

Ahora deberemos de sumar el minuendo y el complemento a 15 obtenido recientemente, utilizando la suma en sistema hexadecimal.

  • ·         A4FC9 – FF217 = 1A41E0

Este resultado claramente no es el final ya que posee más números que al comienzo. Debemos de quitar el número de la izquierda (en este caso es el 1) y sumarlo.

  • ·         A41E0 + 1 = A41E1

Por lo tanto, 4AFC9 – DE8 es A41E1

   OPERACIONES CON NÚMEROS OCTALES

SUMA

Se debe restar o dividir la semisuma de cada columna, cuando la misma exceda la base del sistema, y colocar en la columna inmediata del lado izquierdo, el valor del acarreo tantas veces se haya superado la base del sistema. De esta forma cada unidad que se acarree equivale a ocho unidades la columna anterior.

RESTA

Se realiza de la misma forma que en el sistema decimal, la única diferencia es que cuando se “piden cifras” al número que está al lado, pasa a la columna de la derecha como 8, luego se suma ese 8 con el número que “pidió” la cifra y se continúa con la operación.Cuando el segundo número (sustraendo) es mayor que el primero (minuendo) el resultado (diferencia) será negativo.

MULTIPLICACIÓN

Para  multiplicar octales tomamos dos números decimales se multiplican teniendo en cuenta la siguiente tabla : 

                      0   1   2   3   4   5   6   7
                 0   0   0   0   0   0   0   0   0
                 1   0   1   2   3   4   5   6   7
               2   0   2   4   6   10 12 14 16
               3   0   3   6   11 14 17 22 25
               4   0   4   10 14 20 24 30 34
               5   0   5   12 17 24 31 36 43
               6   0   6   14 22 30 36 44 52
               7   0   7   16 25 34 43 52 61

después de guiarse con esta tabla se suma como ya se dio a entender anteriormente y se da el resultado del producto.



1.4 Aplicación de los Sistemas Numéricos en la Computación

Existe una cantidad infinita de sistemas numéricos, sin embargo, para una computadora, únicamente existen 4, que son el Binario (con base 2), el octal (con base 8), el decimal (base 10) y hexadecimal (base 16). 
Detallaremos el uso de cada uno de ellos por la computadora. Comenzaremos por el Binario, por ser el sistema base de la computación y el único entendido de manera nativa por una computadora, es el sistema en el que está escrita toda instrucción, dato, etc. 

Está compuesto por dos únicos dígitos que 1 y 0 o como en realidad trabaja la computadora, “apagado” y “encendido” y así es como se  representa todos los datos con los que trabaja la computadora, desde su más bajo nivel: el hardware.

 Estos dígitos son llamados bits. Para trabajar la computadora agrupa a los bits en grupos de ocho, a los cuales denomina byte y es esta la razón por la que es tan importante el sistema octal, sin embargo una computadora no puede trabajar con el sistema octal como tal, sino que utiliza su conversión en sistema binario, usando tres bits para cada dígito octal.

 El sistema hexadecimal es empleado al indexar la memoria o al representar un byte debido a que al contener más dígitos es posible usar menos números para representar números más grandes, haciendo posible que un byte, conformado por 8 bits o términos binarios, se representa con solo dos términos hexadecimales, lo que es un ahorro de información. 
Sin embargo, la computadora tampoco reconoce el sistema hexadecimal como tal y, al igual que el sistema octal, lo representa con términos binarios, empleando conjuntos de cuatro bits, para cada término hexadecimal. 

Sin embargo al presentar información al usuario es más factible presentar A9 que 10101001. Por último el sistema decimal únicamente se utiliza al interactuar con el usuario, debido a que un usuario común no está acostumbrado a tratar con diferentes sistemas numéricos.

No hay comentarios.:

Publicar un comentario