0 Usuarios y 1 Visitante están viendo este tema.
Describa el algoritmo para comparar dos números utilizando sus representaciones en Punto Flotante IEEE 754 (normalizados). Justifique el porqué de cada paso del algoritmo.
En primer lugar se comparan los signos del número. Si un número es positivo y el otro negativo ya se obtiene el resultado de la comparación. Si los signos son iguales, se compara todo el resto de la tira utilizando un comparador de binario natural. Esto es válido porque el resto de la tira está formada por | exponente | mantisa , donde el exponente está representado en desplazamiento (el cual conserva el orden y por tanto es válido compararlos con un comparador binario). Finalmente, es correcto comparar las tiras enteras, porque por construcción de los números de punto flotante, la parte 1,F siempre es menor que 2. Por lo tanto cualquier diferencia en el exponente es mayor que la mayor diferencia posible entre las mantisas. Finalmente, si los exponentes son iguales, el resultado de la comparación estará guiada por el resultado de la comparación entre las mantisas, resultado ya provisto en la comparación binaria natural de la tira indicada.Si los números son ambos positivos, el que tenga la tira | exponente | mantisa | mayor será el mayor, si son ambos negativos será el menor.Nota: En esta respuesta se omiten los casos especiales donde los números sean infinito o NaN. Se asume que los números recibidos son normalizados, desnormalizados o cero.
Además el algoritmo debería devolverme cual de los dos es mayor (no si son distintos).