brainf*ck講座第一回 - 導入 -

brainf*ckというプログラミング言語をご存知でしょうか?
プログラマなら一度は話に聞いた事があるのではないでしょうか。

席指揮にはbrainfuckという名前ですが、名前的に問題があるという事で、
brainf*ckと表記します。読み方は「ブレインファック」。

brainf*ckはどのようなプログラミング言語かと言いますと、
下記に示す8つの命令のみで構成された言語です。
俗に言う難読言語というものです。

  1. >・・・ポインタをインクリメントする
  2. <・・・ポインタをデクリメントする
  3. +・・・ポインタが指す値をインクリメントする
  4. -・・・ポインタが指す値をデクリメントする
  5. .・・・ポインタが指す値を出力する
  6. ,・・・1バイトを入力してポインタが指す値に代入する
  7. [・・・ポインタが指す値が0なら対応する]の直後までジャンプする
  8. ]・・・ポインタが指す値が0でないなら、対応する[にジャンプする

ちなみに筆者が認定した三大難解言語は、
brainf*ck、whitespace、Befungeです。
機会があれば他の言語も解説します。

で、実際にbranf*ckでHello,worldを出力するプログラムは下記になります。


+++++++++[>++++++++>+++++++++++>+++++<<<-]>.>++.+++++++..+++.>-.
------------.<++++++++.--------.+++.------.--------.>+.

パッと見たところは何が何やらわかりません。
しかし、これもしっかりと読めば理解ができるのです。

というわけで次回以降からbrainf*ckの解説をしていきたいと思います。