ForHosting KIT · Strumenti per sviluppatori

Checksum CRC-16 XMODEM

I nove caratteri 123456789 danno il valore CRC-16/XMODEM 31c3, cioè 12739 in decimale, il risultato di verifica documentato del profilo CCITT con partenza da zero usato nel trasferimento classico di file e nel firmware. Incolli un testo per ottenerne il checksum. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Testo
123456789
Ottiene
Risultato
31c3
Crc16
31c3
Hex
31c3
Decimale
12.739

CRC-16/XMODEM è un controllo di ridondanza ciclica a sedici bit usato nell'incapsulamento classico del trasferimento file, nel firmware embedded e nelle pile di protocolli che necessitano di una parola di integrità compatta invece di un hash crittografico completo. Ingegneri, studenti e team di supporto spesso necessitano dello stesso risultato da manuale per una stringa breve: il polinomio generatore CCITT 0x1021, registro iniziale a zero (il seme XMODEM), senza riflessione di bit e XOR finale a zero—esattamente il profilo CRC-16/XMODEM il cui valore di controllo per le cifre ASCII da uno a nove è 31C3 in esadecimale. Questo strumento di checksum CRC-16 XMODEM accetta testo non vuoto, lo codifica come UTF-8, esegue quel ciclo deterministico di scorrimento e XOR e restituisce il checksum a sedici bit come quattro cifre esadecimali minuscole insieme al valore decimale e a un breve riepilogo.

Cosa calcola il CRC-16/XMODEM con polinomio 0x1021 e perché conta la parola hex

Un controllo di ridondanza ciclica tratta il messaggio come un polinomio sul campo di Galois a due elementi e lo divide per un polinomio generatore fisso, lasciando un resto che diventa il checksum. Per CRC-16 il resto è largo sedici bit, così l'intero risultato sta in una parola e si scrive naturalmente come quattro cifre esadecimali. Il generatore usato da XMODEM e da molti esempi in stile CCITT è 0x1021, che si espande in x alla sedicesima più x alla dodicesima più x alla quinta più uno.

Nel software la divisione si esegue con OR esclusivo di ciascun byte di ingresso negli otto bit alti di un registro a sedici bit e scorrimento a sinistra otto volte, applicando OR esclusivo con il generatore quando il bit alto è impostato. Questa pagina usa sempre quell'algoritmo non riflesso con valore iniziale zero e XOR finale zero, il profilo il cui valore di controllo documentato per la stringa ASCII di nove byte uno due tre quattro cinque sei sette otto nove è 31C3.

La risposta ripete anche l'intero decimale, la stringa del polinomio 0x1021, l'etichetta di algoritmo CRC-16/XMODEM, il conteggio di byte UTF-8 e il testo originale affinché i client mostrino una riga di audit completa senza ricalcolare i metadati. Poiché CRC-16 non è resistente alle collisioni né munito di chiave, la usi come controllo di trama o di corruzione accidentale, non come prova di autenticità; preferisca digest della famiglia SHA quando l'intento di ricerca è l'hashing crittografico piuttosto che un CRC a due byte.

Dove un checksum CRC-16 XMODEM è utile

Autori di firmware e studenti di protocolli seriali usano un calcolatore di checksum CRC-16 XMODEM per verificare resti calcolati a mano rispetto al polinomio CCITT a seme zero senza scrivere un ciclo di scorrimento in ogni linguaggio. Le piattaforme didattiche e i plugin LMS necessitano di un oracolo deterministico che rifiuti l'input vuoto invece di restituire zero per il messaggio vuoto, così i correttori automatici distinguono risposte mancanti da un vero checksum zero.

I siti di contenuti che si posizionano su CRC-16 XMODEM, calcolatore CRC16 XMODEM o checksum poli CCITT 0x1021 traggono vantaggio da uno strumento live il cui percorso gratuito coincide byte per byte con l'automazione a pagamento sullo stesso modulo puro. I fallimenti di validazione non consumano mai saldo dopo il rifiuto.

Abbini landing CRC-8, CRC-32 o hash crittografico solo quando l'intento di ricerca va oltre un controllo di trama XMODEM a sedici bit—mantenga questa pagina incentrata su CRC-16/XMODEM con poli 0x1021 e seme zero affinché l'intento SEO resti nitido e non collida con varianti MODBUS, IBM o CCITT-FALSE che condividono il nome di famiglia ma non lo stesso vettore di controllo.

Dimostrazioni di resto CRC in aula

I docenti mostrano il valore classico 123456789 → 31C3 e lasciano ricalcolare ad altre stringhe brevi senza installare una libreria CRC.

Quali parametri CRC-16 usa questo strumento?

CRC-16/XMODEM: poli 0x1021 (CCITT), init 0x0000, senza riflessione, xorout 0x0000. Il valore di controllo documentato per ASCII 123456789 è 31C3.

Cosa succede se il testo è vuoto?

È richiesta una stringa non vuota; l'input vuoto non viene trattato come checksum zero riuscito.

Il calcolatore di checksum CRC-16 XMODEM è gratuito?

Lo strumento browser gira gratis sul Suo dispositivo.

CRC-16/XMODEM è uguale a CRC-16/CCITT-FALSE?

No. Entrambi usano il poli 0x1021, ma XMODEM semina il registro con zero mentre CCITT-FALSE usa 0xFFFF, quindi i valori di controllo differiscono. Questo strumento implementa solo XMODEM.

Come vengono contati le lettere accentate e gli altri caratteri non ASCII?

Il testo viene codificato in UTF-8 prima del calcolo, quindi un carattere che occupa più byte li conta tutti, esattamente come li vedrebbe un dispositivo embedded che ricevesse lo stesso flusso UTF-8.

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/enc/crc16-xmodem

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/enc/crc16-xmodem \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"123456789"}'
{
  "text": "123456789"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.crc16_xmodem",
  "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.

L'input vuoto viene rifiutato con invalid_input affinché chi chiama non confonda un campo mancante con un vero checksum zero.

Cosa calcola il CRC-16/XMODEM con polinomio 0x1021 e perché conta la parola hex

In modo critico, il profilo XMODEM semina il registro con zero invece che con tutti uni; quella sola scelta separa CRC-16/XMODEM da CRC-16/CCITT-FALSE, che usa lo stesso poli ma init 0xFFFF e quindi valori di controllo diversi per lo stesso payload.

Contratto di input, errori di stringa vuota e forma della risposta JSON

La stringa viene codificata come UTF-8 prima del ciclo CRC, così i caratteri multi-byte contribuiscono con ogni byte di unità di codice esattamente come farebbe un dispositivo embedded se ricevesse lo stesso flusso UTF-8. Fissi sia un percorso di successo sia un errore di input vuoto nell'integrazione continua affinché cambiamenti accidentali di poly o init non passino inosservati. I campi opzionali nulli vengono omessi invece di essere emessi come null, secondo il contratto del renderer dichiarativo per form web puliti. Invii in POST un corpo JSON con un unico campo stringa obbligatorio denominato text: qualsiasi sequenza non vuota di caratteri di cui desidera calcolare il checksum. Gli alias input, value, s, data, message e payload sono accettati per lo stesso campo così stub SDK e invii da form restano flessibili. Se manca text, il valore non è una stringa o la stringa è vuota, la richiesta fallisce con invalid_input e un messaggio chiaro che richiede una stringa non vuota; tali fallimenti non vengono fatturati sull'API prepagata. In caso di successo il corpo include result, crc16 e hex tutti impostati allo stesso checksum esadecimale a quattro cifre minuscole; decimal con l'intero da zero a sessantacinquemila cinquecentotrentacinque; polynomial fisso a 0x1021; algorithm fisso a CRC-16/XMODEM; input_bytes uguale alla lunghezza UTF-8; text che ripete l'input; e message che riassume conteggio byte e risultato hex. Mantenga i payload a dimensioni di testo ordinarie adatte a una chiamata item in un Worker isolate; questo strumento è per stringhe brevi e frammenti di protocollo, non per blob binari multi-megabyte.

Dove un'API di checksum CRC-16 XMODEM conviene e come funziona il prezzo

Usi lo strumento gratuito nel browser per controlli occasionali; chiami l'API prepagata KIT da backend, funzioni serverless e SDK quando le serve un contratto stabile sotto saldo a $0.002 per item riuscito.

Controlli XMODEM e protocolli seriali

Verifichi che una stringa di payload produca il trailer CRC-16/XMODEM a sedici bit atteso con poli 0x1021 e init zero prima di confrontare log di dispositivo o vettori di test unitari.

Fixture CI per codice di trama

Le pipeline fissano uscite hex deterministiche CRC-16/XMODEM e l'errore di input vuoto affinché cambiamenti accidentali di poly o init falliscano subito.

Come si calcola un checksum CRC-16 XMODEM del testo?

Invii JSON con un campo stringa non vuoto text. L'API codifica la stringa in UTF-8, esegue CRC-16/XMODEM con polinomio 0x1021 e init 0x0000 e restituisce la parola come quattro cifre hex minuscole in result, crc16 e hex.

Leggi la documentazione completa del KIT →