Brainf**k besteht aus einer fortlaufenden Folge von Befehlen, die in einem Programmspeicher abgelegt sind und beginnend beim ersten Befehl fortlaufend abgearbeitet werden.
Daten werden in einem Datenspeicher abgelegt und verarbeitet.
Brainf**k besitzt acht Befehle, jeweils bestehend aus einem einzigen Zeichen:
| Befehl | Beschreibung |
| > | Erhöht den Zeiger auf den Datenspeicher um 1 |
| < | Verringert den Zeiger auf den Datenspeicher um 1 |
| + | Erhöht den aktuellen Zellenwert des Datenspeichers um 1 |
| – | Verringert den aktuellen Zellenwert des Datenspeichers um 1 |
| . | Gibt den aktuellen Zellenwert des Datenspeichers als ASCII-Zeichen aus |
| , | Liest ein ASCII-Zeichen und speichert dieses in der aktuellen Zelle des Datenspeichers |
| [ | Springt nach vorne, hinter den passenden ]-Befehl, wenn der aktuelle Zellenwert des Datenspeichers 0 ist |
| ] | Springt zurück, hinter den passenden [-Befehl, wenn der aktuelle Zellenwert des Datenspeichers nicht 0 ist |