Vai al contenuto
100% locale

Codificatore brainfuck

Converti testo in un programma Brainfuck che lo stampa, oppure esegui un programma Brainfuck e vedi il suo output.

Ingresso

Codificatore brainfuck

Incolla qualsiasi testo e questo strumento genera un programma Brainfuck che lo stampa esattamente, carattere per carattere. Funziona anche al contrario: incolla un programma Brainfuck e lo strumento lo esegue, mostrando tutto quello che produce. Passa da uno all'altro con l'opzione modalità, o usa il pulsante di scambio per inviare un programma generato direttamente all'interprete.

Attiva "Ottimizza lunghezza con cicli" per rendere il programma generato più breve: invece di ripetere + fino a 255 volte per un singolo carattere, costruisce il valore con un piccolo ciclo di moltiplicazione, cosa che importa una volta che l'input supera poche parole. La dimensione cella controlla come ogni carattere viene memorizzato: 8-bit è il classico Brainfuck di un byte per cella, corrispondendo al comportamento dei veri interpreti e al testo UTF-8, mentre le celle 16-bit e 32-bit contengono un intero punto di codice per cella in modo che le lettere accentate e gli emoji vengano copiati senza byte extra. Celle nastro imposta quante celle di memoria ha l'interprete con cui lavorare, e il limite passaggi arresta un ciclo incontrollato dal congelare la pagina: aumentalo per un programma che legittimamente ha bisogno di più passaggi, o abbassalo mentre testi qualcosa in cui non fidati ancora. "Mostra stato nastro dopo l'esecuzione" aggiunge un'istantanea delle celle di memoria una volta terminato il programma, utile per eseguire il debug di cicli che non producono l'output previsto. Il codice generato può anche essere avvolto a una larghezza di riga fissa per una lettura più facile; Brainfuck ignora gli spazi bianchi e qualsiasi carattere che non sia uno dei suoi otto comandi, quindi l'avvolgimento non cambia mai quello che il programma fa.

L'input molto lungo produce un programma più lungo, e entrambe le direzioni sono limitate in modo che la scheda del browser non si blocchi mai su input incontrollato accidentale o un ciclo infinito: otterrai invece un messaggio chiaro che ti dice cosa regolare.

Tutto viene eseguito localmente nel tuo browser; nessun testo o codice viene mai caricato da nessuna parte. Copia il risultato, scaricalo come file .txt, cancella il pannello o rimanda l'output direttamente all'input per continuare a lavorare.

FAQ

Cos'è Brainfuck?
Brainfuck è un linguaggio di programmazione esoterico minimalista con solo otto comandi, costruito intorno a un nastro di celle di memoria e un singolo puntatore. È popolare come una curiosità e una sfida code-golf, non per programmi reali.
Perché il programma generato sembra diverso ogni volta che cambio la dimensione della cella?
La dimensione cella decide quale valore ogni carattere viene memorizzato come. Le celle 8-bit contengono un byte UTF-8, quindi una lettera accentata o emoji ha bisogno di più celle; le celle 16-bit e 32-bit possono contenere un intero carattere alla volta, il che cambia sia i valori che il percorso più breve verso di essi.
Cosa succede se il mio programma ha un ciclo infinito?
L'interprete si ferma non appena raggiunge il limite passaggi e segnala che il programma non è terminato, piuttosto che bloccare la pagina. Aumenta il limite passaggi se il programma legittimamente ha bisogno di più passaggi, o correggi il ciclo.
Funziona il comando virgola (input)?
Lo strumento non ha un flusso di input separato per un programma in esecuzione, quindi `,` viene sempre letto come fine del file e imposta la cella corrente a 0, lo stesso comportamento a cui la maggior parte degli interpreti ricorre una volta che l'input è esaurito.
Il mio testo o codice viene caricato da qualche parte?
No. Sia la codifica che l'esecuzione di un programma avvengono interamente nel tuo browser: niente di quello che incolli qui viene mai inviato a un server.