Sistemas de Numeración | Serie Computación y Programación #2

in #castellano6 years ago (edited)
Elaborada por @abdulmath, con GIMP.
Saludos queridos asiduos lectores de mí blog, bienvenidos. Este post es una continuación de mi anterior publicación de la nueva serie Computación y Programación, aquí hablaremos un poco más acerca de los sistemas de numeración. Como recordarán, ya hemos dado una definición formal y como expresarlos de acuerdo a la base del sistema donde esté dada la representación numérica. El punto que tocaremos será el de conversión de representaciones numéricas entre los sistemas de numeración: decimal binaría, octal y hexadecimal. Estos temas son parte de un curso de Programación y diseño de algoritmos.


La Serie Computación y Programación en su primera edición, consta de una entrega diaria, donde se desarrolla un tema, en el cual abordaremos los aspectos teóricos, describiremos algunos ejemplos con el objetivo de visualizar y explicar como aplicar lo estudiado. La misma está dirigida al público en general, pero con especial atención a estudiantes universitarios, que deseen estudiar o estudien computación, ingeniería en computación y carreras afines. Estoy abierto a sus comentarios y dudas que puedan surgir en el desarrollo del mismo. Sin perder más tiempo, iniciemos.



Conversión entre los sistemas de numeración


Antes de empezar a hablar acerca de la conversión de los sistemas de numeración, vamos a mostrar una tabla, donde daremos la representación de los primeros 15 números decimales en los sistemas: binario, octal y hexadecimal. Podemos notar que cada secuencia binaria única equivale a uno y solo a un símbolo en cada uno de estos sistemas de numeración. Podemos usar esta equivalencia entre los sistemas de numeración: binario, octal y hexadecimal, en forma de notación abreviada para convertir entre cualquiera de estas bases.



Conversión de Hexadecimal a Binario

Si tenemos una representación numérica en la base hexadecimal, y si queremos expresar dicha representación numérica en la equivalencia binaria, lo podemos lograr reemplazando cada símbolo hexadecimal por su expresión abreviada binaria correspondiente. Para entender un poco más lo que acabamos de decir, tenemos el siguiente ejemplo:


Ejemplo 01: ¿Cuál es el equivalente binario del número hexadecimal AF3B1?


Para empezar debemos expresar cada símbolo hexadecimal por su secuencia binaria correspondiente, la cual podemos encontrar en la tabla que mostramos al principio, a saber:


Notemos que en la representación anterior, con la idea de facilitar la lectura separamos en grupos de 4 bits, sin embargo, al escribir la representación numérica binaria, debemos unir todas las expresiones de la forma siguiente:



Ahora bien, si deseamos convertir representaciones numéricas de binarios en sus equivalentes hexadecimales, se puede seguir un procedimiento de dos pasos que casi es inverso al procedimiento que vimos anteriormente. Dicho procedimiento, consta de 2 pasos, que enunciaremos a continuación:

  1. Formamos grupos de cuatro bits comenzando del bit que esta más a la derecha del número binario; en el caso que el último grupo (en la posición final a la izquierda) tenga menos de cuatro bits, agregamos tantos ceros a la izquierda de los bits, como sea necesario, para así convertirlo en un grupo de cuatro bits.
  2. Posteriormente, reemplazamos cada uno de los grupos de cuatro bits por su equivalente hexadecimal (el cual podemos encontrar en la tabla mostrada en la parte inicial).


Ahora bien, con el objetivo de visualizar y entender este proceso algorítmico, miremos el siguiente ejemplo:

Ejemplo 02: ¿Cual es el equivalente hexadecimal del número binario 0110011110101010100111?

Siguiendo el proceso descrito ya de dos pasos, entonces tenemos:

  1. Al formar grupos de cuatro bits partiendo por el bit más a la derecha tenemos entonces:


    Notemos que el último grupo a la izquierda contiene solo dos bits, es necesario agregar dos bits extra a la izquierda, es decir, dos ceros extras, para convertirlo en una secuencia de 4 bits. De esta manera la representación numérica quedará expresada de la siguiente forma:


  2. A continuación reemplazamos cada grupo de 4 bits por su equivalente hexadecimal que podemos buscar en la tabla de equivalencias, así tenemos lo siguiente:


De esta manera, podemos expresar la representación numérica en la base hexadecimal como sigue:




Queridos amigos y lectores, espero hayan disfrutado de esta segunda publicación de la serie de Computación y Programación, los espero en la próxima entrega de esta serie, donde continuaremos hablando de los sistemas de numeración. Espero que esto pueda servir de apoyo a ustedes, hijos, nietos, sobrinos o amigos que quieran aprender un poco más del maravilloso mundo de las matemáticas y la computación. No olviden dejar sus comentarios. Saludos y nos leemos pronto.

Si desean consultar un poco más del tema pueden usar las siguientes referencias.

  • Knuth, Donald Ervin. The art of computer programming. Vol. 1, 2, y 3. Pearson Education, 1997.
  • Knuth, Donald Ervin. Fundamental algorithms: the art of computer programming. 1973.
  • Knuth, Donald Ervin. Computer programming as an art. ACM Turing award lectures. ACM, 2007.

También los invito a leer las anteriores publicaciones de está serie de Computación y Programación, que estoy seguro serán de su interés:

Sistemas de Numeración #1

Todas las ecuaciones fueron creadas y editadas por @abdulmath con , y GIMP.




Imagen elaborada por @abdulmath, diseñadas y editada con Karbon y GIMP.

Sort:  

Un nuevo tema que maravilloso tus temas. Mi estima y felicitaciones por tu trabajo.

Hola @rmartinezpoeta, gracias por tu comentario. Saludos y un abrazo.

como esta todo profe

Hola @duque, muy bien gracias a dios. Trabajando un poco. Saludos y un abrazo.

Hi @abdulmath!

Your post was upvoted by utopian.io in cooperation with steemstem - supporting knowledge, innovation and technological advancement on the Steem Blockchain.

Contribute to Open Source with utopian.io

Learn how to contribute on our website and join the new open source economy.

Want to chat? Join the Utopian Community on Discord https://discord.gg/h52nFrV

¡Felicidades, #proconocimiento te valoró!


Has sido reconocido(a) por tu buen post por el Comité de Arbitraje y Valoración del Proyecto Conocimiento @proconocimiento.

Apoyamos y valoramos tu esfuerzo...

gif proconocimiento 2.gif


Proyecto Conocimiento es parte de la comunidad @provenezuela.

Pioneros en la plataforma #steemit en el reconocimiento y valoración a la Producción Intelectual en habla hispana.

Agradecido por el reconocimiento y la valoración. Muchas Gracias. Saludos y abrazos al equipo.

Recuerdos de mis clases universitarias jajajaja. Buenísimo. Un Abrazo y Saludos

Hola @henjos, que bueno, recordar es vivir. Saludos

Coin Marketplace

STEEM 0.20
TRX 0.14
JST 0.030
BTC 64294.06
ETH 3427.66
USDT 1.00
SBD 2.59