04 Comment est structuré un programme Brainf**k ?

Brainf**k consiste en une séquence continue d’instructions qui sont stockées dans une mémoire de programme et qui sont traitées en continu en commençant par la première instruction.

Les données sont stockées et traitées dans une mémoire de données.

Brainf**k possède huit commandes, chacune consistant en un seul caractère :

CaractèreSignification
>incrémente le pointeur de données (pour pointer vers la cellule suivante à droite)
<décrémente le pointeur de données (pour pointer vers la cellule suivante à gauche)
+incrémente l’octet au niveau du pointeur de données (augmente de un)
-décrémente l’octet au niveau du pointeur de données (diminue de un)
.sortie de l’octet au niveau du pointeur de données
,accepter un octet d’entrée, en stockant sa valeur dans l’octet au pointeur de données
[si l’octet du pointeur de données est égal à zéro, au lieu de déplacer le pointeur d’instruction vers la commande suivante, il faut le faire sauter vers la commande qui suit la commande ] correspondante.
]si l’octet du pointeur de données est différent de zéro, au lieu de déplacer le pointeur d’instruction vers la commande suivante, il revient à la commande qui suit la commande [ correspondante .