Buscar aquí

11 julio 2012

Convertir numeros hexadecimales o binarios usando bc

Convertir números grandes puede ser un lío por ejemplo si queremos transformar a decimal el número 17870283321406128128 windows muestra un valor algo extraño con varias letras C, que no está bien.  Afortunadamente, unix hace mejor el trabajo y usando algo tan simple como bc, podemos obtener el valor correcto para ello se usa la opción obase=16 pues tenemos un decimal a hexadecimal:

servidor > bc
obase=16
17870283321406128128
 F800000000000000

y listo... ahi tenemos el valor real... ahora si tenemos un hexadecimal y queremos pasar a decimal:
servidor > bc
ibase=16
F800000000000000
17870283321406128128

Ahora, si queremos pasar de binario a decimal o hexadecimal, hay que usar el ibase u obase con =2, así por ejemplo:

servidor > bc
ibase=2
1010
10

obtenemos que el binario 1010 es un 10 decimal.

PD: para salir de bc se usa quit


No hay comentarios.:

Publicar un comentario