Métodos Para Convertir Números Decimales A Hexadecimal Y Viceversa Publicado Por Comtecknet Por Comtecknet On On Martes, Octubre 12th 2010 Under Otros Under Otros Tags: /A , /F , Binario , Como , Convertir , ,Decimal Decimal , , Hexadecimal , , Metodos , Numeros
A día de hoy ya hemos visto como podemos convertir números decimales abinario y octal, hoy vamos a ver cómo podemos pasarlos al sistema hexadecimal. El sistema hexadecimal es un sistema de base 16, por lo tanto tiene 16 valores posibles que van del 0 al 9 y de la A a la F . Valores hexadecimal: 0 1 2 3 4 5 6 7 8 9 A B C D E F Las letras A B C D E F corresponden a los valores 10, 11, 12, 13, 14, 15 respectivamente.
Un valor hexadecimal corresponde a 4 bits, por lo que se convierte en un sistema muy útil para simplificar largas cadenas de binario.
A continuación muestro una tabla de ayuda con la correspondencia de valores.
Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Binario 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Octal Hexadecimal 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 10 8 11 9 12 A 13 B 14 C 15 D 16 E 17 F
Como ocurre con la conversión de binario y octal, en hexadecimal hay varios métodos, en esta entrada pondré dos métodos para convertir de decimal a hexadecimal y otros dos para convertir de hexadecimal a decimal.
Convertir números decimales a hexadecimal.
Primera forma. La primera forma la haremos a base de dividir el número decimal en 16 (al igual que enbinario lo hacíamos entre 2) hasta que no podamos dividir más.
Después de realizar las divisiones nos fijamos si hay algún resto superior o igual a 10, si es así, pasaremos cada número a la letra hexadecimal que corresponde. En este ejemplo el resto “13” se convierte al valor “D”. A continuación nos fijamos en los restos de las divisiones y vamos escribiéndolos, siendo el primer número hexadecimal el resto de l a última división. El resultado es 74D16).
Segunda forma. Esta forma es más sencilla que la anterior y consiste en pasar el número decimal abinario y después convertirlo a hexadecimal. Si aun no sabéis convertir un número decimal a binario os aconsejo que leáis primero esta entrada. Vamos a partir de un numero binario (ya hemos convertido un numero decimal).
1001111010110112). Para pasar de un número binario a decimal debemos hacer agrupaciones de 4 bits, tomando el punto de inicio el último número binario de la derecha.
Iremos haciendo agrupaciones de derecha a izquierda. Si el ultimo grupo no llega a 4 bits, los rellenaremos con 0, por ejemplo, si el ultimo grupo de 4 bits es 10, lo rellenaremos con 0 de la siguiente forma 0010
Explicación:
Primer grupo -> 1011 corresponde a B (11) en hexadecimal. Segundo grupo -> 0101 corresponde a 5 en hexadecimal. Tercer grupo -> 1111 corresponde a F (15) en hexadecimal. Cuarto grupo -> 100 se transforma en 0100, corresponde a 4 en hexadecimal.
El resultado de 1001111010110112) es 4F5B16) cuyo valor decimal es 2031510).
Convertir un número hexadecimal en decimal. Primera forma. La forma más sencilla de convertir un número hexadecimal a decimal, es pasando dicho número a binario y después convertirlo en decimal. Vamos a tomar el número hexadecimal A13F16). 1º) Primero lo transformamos el numero hexadecimal a binario.
Primer número hexadecimal: A equivale a 10102).
Segundo número hexadecimal: 1 equivale a 00012).
Tercer número hexadecimal: 3 equivale a 00112). Cuarto numero hexadecimal: F equivale a 11112).
El resultado es 10100001001111112). 2º) Convertimos el número binario en decimal.
1×215 + 1×213 + 1×28 + 1×25 + 1×24 + 1×23 + 1×22 + 1×21+ 1×20 = 32768 + 8192 + 256 + 32 + 16 + 8 + 4 + 2 + 1 = 4127910). Resultado:
A13F16) equivale a 10100001001111112) cuyo decimal es 4127910). * Observamos que un número medida númerosdecimales y binarios.
hexadecimal
simplifica
en
mayor
Segunda forma. La segunda forma de convertir números hexadecimales en decimales es haciendo la segunda parte de la primera forma, pero es vez de multiplicar cada valor por 2, lo
haremos por 16 ya que es la base hexadecimal, elevado a la posición que corresponda empezando por 0. Tomando el ejemplo anterior: A13F16)
Ax163 + 1×162 + 3×161 + Fx160 = 40960 + 256 + 48 + 15 = 4127910) * Para poder multiplicar el valor A y F del ejemplo lo he sustituido por sus valoresdecimales siendo A = 10 y F = 15. Con esto doy por finalizado las entradas teoricas introductorias para la conversión de distintos tipos de numeración.