Brainfuck

Brainfuck vytvoril Urban Müller ako programovací jazyk s najmenším prekladačom všetkých čias. Na Amiga OS 2.0 zaberal len 240 bajtov (údajne sa mu to podarilo neskôr zlepšiť na menej ako 200 bajtov).

Jazyk obsahuje 8 príkazov, pomocou ktorých je možné pracovať s jediným smerníkom, ktorý ukazuje na bajt v poli o veľkosti 30000 bajtov (pole je inicializované na 0) a smerník je inicializovaný na počiatok tohto poľa.

Každý z príkazov jazyka je reprezentovaný jediným znakom:

Popis
>inkrementovať smerník
<dekrementovať smerník
+inkrementovať hodnotu, na ktorú smerník ukazuje
-dekrementovať hodnotu, na ktorú smerník ukazuje
.vypísať bajt, na ktorý smerník ukazuje
,načítať bajt, na ktorý smerník ukazuje
[skok dopredu, za zodpovedajúce ], ak bajt, na ktorý smerník ukazuje, je rovný 0
]skok dozadu, na zodpovedajúce [, ak bajt, na ktorý smerník ukazuje, je rôzny od 0

Príkazy jazyka je možné vyjadriť v jazyku C takto (predpokladajme že p bol definovaný ako char *):

Brainfuck príkaz C Príkaz
>++p;
<--p;
+++*p;
---*p;
.putchar(*p);
,*p = getchar();
[while (*p) {
]}

Externé odkazy

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.