Conversión Punto Flotante Personalizado
El punto flotante personalizado permite representar un número usando dos componentes: una mantisa y un exponente. La fórmula general es:
valor = mantisa x 2^exponente
Cada componente puede estar representado en un sistema numérico diferente, lo que permite una gran flexibilidad en la representación de números muy grandes o muy pequeños.
¿Cómo funciona?
- La representación en punto flotante separa un número en dos partes: mantisa y exponente.
- La mantisa representa la precisión o los dígitos significativos del número.
- El exponente determina dónde se coloca el punto decimal, permitiendo representar números muy grandes o muy pequeños.
- La mantisa puede ser interpretada como un valor fraccionario (0.XXX) o como un valor entero, dependiendo del formato.
- En formatos normalizados, puede existir un bit implícito que no se almacena pero se asume como 1 al interpretar la mantisa.
- Cada componente puede usar un sistema de representación diferente:
- BSS - Binario Sin Signo
- BCS - Binario Con Signo (bit más significativo indica el signo)
- Ca1 - Complemento a 1 (inversión de bits para negativos)
- Ca2 - Complemento a 2 (inversión + 1 para negativos)
- Ex2 - Exceso a 2 (solo para exponente)
Ejemplo:
Mantisa: 1.101 (BCS) - fraccionaria
Primer bit (1) indica signo negativo
Valor: -0.101 (binario) = -0.625 (decimal)
Mantisa: 101 (BCS) - entera
Primer bit (1) indica signo negativo
Valor: -01 (binario) = -1 (decimal)
Exponente: 101 (Ex2, 3 bits)
Exceso = 2^(3-1) = 4
Valor BSS: 101 = 5
Valor real: 5 - 4 = 1
Resultado final (mantisa fraccionaria):
-0.625 x 2^1 = -1.25
Resultado final (mantisa entera):
-1 x 2^1 = -2