ForHosting KIT · Ingegneria e costruzioni

Calcolatore segno e modulo: codifica e decodifica

Meno 37 su otto bit diventa 10100101: il primo bit indica il segno, gli altri sette il modulo. Codifichi un intero decimale o decodifichi una sequenza da 2 a 53 bit e riconosca subito lo zero negativo. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Valore
-37
Operazione
Encode
Larghezza in bit
8
Ottiene
Valore decimale
-37
Schema
10100101
Bit di segno
1
Modulo
37

Questo calcolatore per la rappresentazione in segno e modulo converte un intero decimale con segno in una sequenza binaria a larghezza fissa e riconverte la sequenza in un numero. Diversamente dal complemento a due, riserva il bit più significativo esclusivamente al segno e utilizza tutti i bit rimanenti per il valore assoluto. Selezioni un’operazione, indichi il valore e la larghezza totale in bit: otterrà il bit di segno, i bit del modulo, il modulo numerico, la sequenza completa e il valore decodificato. Il risultato identifica inoltre la speciale rappresentazione dello zero negativo consentita da questo sistema numerico.

Come codificare un intero con segno

Selezioni la codifica, inserisca un intero in base 10 nel campo del valore e scelga una larghezza totale compresa tra 2 e 53 bit. Il calcolatore separa innanzitutto il segno dal modulo. Un valore negativo produce un bit di segno iniziale pari a 1, mentre zero e valori positivi producono un bit iniziale pari a 0.

Successivamente converte il modulo in binario e aggiunge zeri a sinistra finché il valore occupa esattamente un bit in meno rispetto alla larghezza selezionata. Il bit di segno e il modulo completato vengono uniti nella sequenza finale. Per esempio, il modulo 37 è 0100101 su sette bit; pertanto -37 su otto bit diventa 10100101.

La posizione del segno non può ampliare l’intervallo positivo o negativo. Con una larghezza w, il massimo modulo ammesso è 2 elevato a w meno 1, e poi meno 1. I valori esterni a questo intervallo simmetrico vengono rifiutati anziché troncati, riportati ciclicamente nell’intervallo o modificati senza avviso.

Il risultato è quindi adatto a esercizi, documentazione e vettori di prova.

Come decodificare una sequenza binaria

Selezioni la decodifica e inserisca un valore binario con un numero di cifre esattamente uguale alla larghezza scelta. Gli zeri iniziali sono significativi, quindi la sequenza viene acquisita come testo e non come numero decimale. La prima cifra viene interpretata soltanto come segno: 0 indica un valore non negativo, mentre 1 indica un valore negativo.

Le cifre restanti vengono lette come modulo binario senza segno. Se il modulo non è zero, viene applicato il segno per ottenere l’intero decimale decodificato. La sequenza 10100101, per esempio, ha bit di segno 1, bit del modulo 0100101, modulo 37 e valore decimale -37.

Il calcolatore richiede che la larghezza dichiarata coincida con la lunghezza effettiva. Rifiuta spazi, prefissi come 0b, separatori e cifre diverse da 0 o 1, evitando risultati apparentemente validi ottenuti da sequenze ambigue.

Comprendere l’intervallo e lo zero negativo

La rappresentazione in segno e modulo è facile da leggere perché memorizza il segno separatamente, ma questa struttura ha conseguenze diverse dal complemento a due. L’intervallo numerico disponibile è simmetrico: una sequenza di otto bit rappresenta i valori ordinari da -127 a 127, non da -128 a 127. Esistono inoltre due codifiche dello zero numerico.

Una sequenza composta interamente da zeri rappresenta lo zero positivo; un bit di segno pari a 1 seguito esclusivamente da bit del modulo pari a zero rappresenta lo zero negativo. La distinzione è utile nell’analisi di formati informatici storici, concetti di segno in virgola mobile, esempi didattici o esercizi hardware in cui conta la sequenza stessa. Il calcolatore non converte mai implicitamente tra segno e modulo e complemento a due.

Se il sistema di origine utilizza un’altra rappresentazione con segno, la identifichi prima di interpretare i bit. Per confronti affidabili, mantenga la stessa larghezza in tutti i calcoli: il riempimento cambia la sequenza completa, ma non il modulo né l’intero decodificato.

Verificare esercizi di logica digitale

Controlli bit di segno, riempimento del modulo, intervalli rappresentabili e risposte decodificate a una larghezza definita.

Creare vettori di prova deterministici

Generi sequenze esatte in segno e modulo e valori intermedi strutturati per testare codificatori o decodificatori.

Esaminare formati numerici legacy

Interpreti sequenze memorizzate conservando la distinzione significativa tra zero positivo e zero negativo.

Quali larghezze in bit sono supportate?

Può scegliere qualsiasi larghezza totale compresa tra 2 e 53 bit, incluso il bit di segno.

Perché l’intervallo è minore rispetto al complemento a due?

Un bit memorizza soltanto il segno e gli altri il modulo; pertanto, su otto bit il modulo massimo è 127.

Posso inserire il prefisso 0b o degli spazi?

No. Per la decodifica, il valore deve contenere esattamente il numero richiesto di cifre binarie, senza prefissi, spazi o separatori.

Come si converte una sequenza in segno e modulo in un numero decimale?

Scelga la decodifica, indichi come larghezza il numero esatto di cifre e inserisca la sequenza. Il primo bit dà il segno e il resto il modulo, quindi 10100101 su otto bit vale -37.

Che cos'è lo zero negativo in segno e modulo?

È la sequenza con il bit di segno a 1 e tutti gli altri a 0. Si decodifica come 0, proprio come la sequenza di soli zeri, e il risultato le indica quale dei due zeri ha inserito.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/elec/signed-magnitude

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/elec/signed-magnitude \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operation":"encode","value":"-37","bit_width":8}'
{
  "operation": "encode",
  "value": "-37",
  "bit_width": 8
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "elec.signed_magnitude",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Come decodificare una sequenza binaria

L’output conserva la sequenza originale e separa sign_bit, magnitude_bits e magnitude, consentendo a Lei di verificare ogni fase in modo indipendente.

Comprendere l’intervallo e lo zero negativo

Entrambe vengono decodificate nel valore numerico 0, perciò il campo negative_zero registra esplicitamente quale rappresentazione è stata fornita.

Quanto costa un calcolo tramite API?

Ogni richiesta API costa $0.002. Lo stesso calcolo deterministico è disponibile gratuitamente anche nel Suo browser.

Come viene gestito lo zero negativo?

Una sequenza con bit di segno 1 e modulo interamente nullo viene decodificata numericamente come 0 e restituisce negative_zero come vero.

Leggi la documentazione completa del KIT →