Convertitore numeri decimali – binario (IEEE754)

pagare.online banner e1551212046492

Convertitore IEEE 754 (32-bit)


    

Converti facilmente numeri decimali in formato IEEE 754 (32 o 64 bit) e viceversa. Lo strumento online gratuito di Pagare.Online supporta singola e doppia precisione, mostrando anche bit di segno, esponente e mantissa. Perfetto per studenti, programmatori, ingegneri e chi lavora con sistemi low-level. Nessuna installazione, risultati immediati.

Inserisci un numero decimale positivo o negativo (es. 13.25, -0.1, 0) e clicca sul pulsante
Converti.

Cosa verrà generato

  • Bit di segno (1 bit): 0 per numeri positivi, 1 per negativi
  • Esponente (8 bit): codificato con bias 127
  • Mantissa (23 bit): parte frazionaria della rappresentazione normalizzata (senza il bit implicito)
Pubblicità:

Lo strumento segue rigorosamente la specifica IEEE 754 ed è utile per l’apprendimento, la verifica e l’esplorazione della codifica binaria dei numeri in sistemi a 32 bit.

Pseudo-codice per IEEE 754

Pubblicità:

function floatToIEEE754(float_num):
    if float_num == 0:
        return "0" + "00000000" + "00000000000000000000000"  // caso zero

    // 1. Segno
    if float_num < 0:
        sign_bit = "1"
        float_num = abs(float_num)
    else:
        sign_bit = "0"

    // 2. Converti parte intera e frazionaria in binario
    int_part = floor(float_num)
    frac_part = float_num - int_part

    binary_int = convertIntegerToBinary(int_part)  // es: 13 -> "1101"
    binary_frac = convertFractionToBinary(frac_part, max_bits=30)

    full_binary = binary_int + "." + binary_frac

    // 3. Normalizza: sposta il punto dopo il primo 1
    if int_part != 0:
        exponent = length(binary_int) - 1
        mantissa = binary_int[1:] + binary_frac
    else:
        // caso tipo 0.00001: trova primo 1 in frazione
        index = indexOfFirstOne(binary_frac)
        exponent = - (index + 1)
        mantissa = binary_frac[index+1:]

    // 4. Calcola esponente con bias
    exponent_bias = exponent + 127
    exponent_bits = convertIntegerToBinary(exponent_bias).padLeft(8, '0')

    // 5. Prendi i primi 23 bit della mantissa
    mantissa_bits = mantissa.padRight(23, '0')[0:23]

    // 6. Combina tutto
    return sign_bit + exponent_bits + mantissa_bits


Pubblicità:
(Rocket Hosting) Hosting WordPress


Sitemap HTML - Statistiche sito - Privacy - Pagare.online by cap0l00p3r is licensed under CC BY 4.0