Pregunta

Estoy trabajando en una calculadora que le permite realizar cálculos más allá del punto decimal en octal, hexadecimal, binario y, por supuesto, decimal. Sin embargo, tengo problemas para encontrar una forma de convertir números decimales de coma flotante en hexadecimal, octal, binario y viceversa.

El plan es hacer todos los cálculos en decimal y luego convertir el resultado al sistema numérico apropiado. Cualquier ayuda, ideas o ejemplos serán apreciados.

¡Gracias!

¿Fue útil?

Solución

Hmm ... esta fue una tarea asignada en el CS & de mi mi universidad "! por supuesto.

Las operaciones para binario se describen en Schaum's Outline Series: Essential Computer Mathematics de Seymour Lipschutz. Por alguna razón, todavía está en mi estantería 23 años después.

Como pista, convierta octal y hexadecimal a binario, realice las operaciones, vuelva a convertir a binario.

O puede realizar operaciones decimales y realizar las conversiones a octal / hexadecimal / binario después. El proceso es esencialmente el mismo para todos los sistemas de números posicionales aritméticos.

Otros consejos

¿Qué lenguaje de programación estás usando? Definitivamente es una buena idea cambiar todo a binario, hacer los cálculos en el binario y luego volver a convertir. si multiplica un número binario (unsigneD) por 2, ti es lo mismo que un Bit Shift Left (< < 1 en C), una división por 2 es lo mismo que un Bit shit Right ( > > en C). suma y resta es lo mismo que lo haría en la escuela primaria.

también, recuerda que si lanzas un float como int, lo truncará int (10.5) = 10;

Tuve este mismo problema hace unos días. Encontré http://www.binaryconvert.com , que le permite convertir entre coma flotante decimal, binario, octal y hexadecimal en el orden que desee.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top