UUlpNacre
Flussi di lavoro

Flussi di programmazione · Distanza ULP binary64 finita

03
Prodotto

Flussi di lavoro

Misura la distanza in passi rappresentabili fra due valori binary64 finiti, equiparando gli zeri con segno. Prova subnormali adiacenti e i due segni, rifiutando interi, infiniti e NaN senza interpretare il risultato come errore relativo.

01

Scarica l’applicazione

Seleziona una cartella e chiedi all’assistente di leggere i file interessati prima di modificarli. Definisci obiettivo e limiti dell’attività.

02

Apri la cartella del progetto

Scegli un endpoint compatibile. Gli strumenti disponibili e la qualità delle risposte dipendono dal modello e dal server configurati.

03

Collega e prova il modello

Controlla le modifiche e l’output dei comandi. Esegui le verifiche del progetto prima di accettare il risultato: il codice generato non è automaticamente collaudato.

04

Controlla le modifiche ed esegui i test

Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.

Distanza ULP binary64 finita

Flussi di lavoro
import math, struct

def ulp_distance(a, b):
    if any(type(x) is not float or not math.isfinite(x) for x in (a, b)):
        raise ValueError("ulp.finite")
    def key(value):
        bits = struct.unpack(">Q", struct.pack(">d", value))[0]
        magnitude = bits & ((1 << 63)-1)
        return (1 << 63)-magnitude if bits >> 63 else (1 << 63)+magnitude
    return abs(key(a)-key(b))

Controlla prima di applicare. Controlla le modifiche e l’output dei comandi. Esegui le verifiche del progetto prima di accettare il risultato: il codice generato non è automaticamente collaudato.

Ambiente di sviluppo con IA

La prossima idea comincia qui.

Scarica per Windows ↗