Brainfuck単語


ニコニコ動画でBrainfuckの動画を見に行く
ブレインファック
1.2千文字の記事
  • 8
  • 0pt
掲示板へ

Brainfuckとは、難解であるとされるプログラミング言語の一つである。
名称が良いものではないため、通常はBrainf*ckと書く。

概要

BrainfuckはUrban Müllerが開発したプログラミング言語で、コンパイラが極限に小さくなるように考案された言語で、実用的な言語ではない。実際のコンパイラは1KBもない。

実行可な命は8つしか存在しないが、このプログラミング言語は立チューリング完全であり、理論的にはC言語で記述可な命と同様の表現力を持つことが分かっている。

実行可能な命令

Brainfuckには8つの命が存在する。これらを組み合わせることで普通プログラムと同様の事が実行することができる。 

プログラム例

プログラムの基本はやっぱりHello worldを出力するプログラム


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

 

プログラム説明

最初のポインタの位置で値を9回インクリメントする。最初のループで最初のポインタに入っている値をループカウンタとし、2番ポインタの値を8×9=72、3番ポインタの値を11×9=99、4番ポインタの値を5×9=45にする。

2番ポインタに入っている値は72で、これを文字コードで出力すると"H"になる。
ポインタインクリメントし、3番ポインタの値を2回インクリメントして101にして出力すると、"e"になる。
それをさらに7回インクリメントすると"l"になり、2回出力する。さらに3回インクリメントして"o"にする。
ポインタインクリメントし、4番ポインタの値を1回デクリメントして44にして出力すると","になる。
それをさらに12回デクリメントすると" (半角スペース)"になる。

以降、ポインタの移動とインクリメント・デクリメントを繰り返して出力すると、最終的には「Hello, world!」と出力(表示)される。
文字コード表に関しては文字コードググれば見つかるかもしれない。

 

関連動画

 

関連項目

関連記事

子記事

兄弟記事

  • なし

【スポンサーリンク】

  • 8
  • 0pt
記事編集 編集履歴を閲覧

ニコニ広告で宣伝された記事

結月ゆかり (単) 記事と一緒に動画もおすすめ!
提供: 狩猫
もっと見る

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

Brainfuck

59 ななしのよっしん
2019/10/14(月) 00:50:15 ID: KBuf8EShtM
0x21から0x7eまでの文字を表示
+++++++++[>++++++++++<-]>++++>+++[<<++++++++++>>-]<<++>[<+.>-]
👍
高評価
0
👎
低評価
0
60 ななしのよっしん
2019/10/14(月) 16:42:26 ID: KBuf8EShtM
現在ポインタメモリを右隣のメモリコピーする
コピーした後のポインタ位置は変わらない
>[-]>[-]<<[>+>+<<-]>>[<<+>>-]<<

これを再帰的に呼び出して、メモリffから00まで降順に配置する
-[>[-]>[-]<<[>+>+<<-]>>[<<+>>-]<<>-]
👍
高評価
1
👎
低評価
0
61 ななしのよっしん
2019/10/14(月) 17:51:40 ID: KBuf8EShtM
!(びっくり)が入力されるまでループ
[-]+[[-]>[-]<+++[>++++++++++<-]>+++>,<[>-<-]>[[-]<<+>>]<<]
👍
高評価
0
👎
低評価
0
62 ななしのよっしん
2019/10/14(月) 19:02:23 ID: KBuf8EShtM
Hello World!(111byte)
++++++++[>++++>+++++++++>++++++++++++<<<-]>>.>+++++.+++++++..+++.<<.>+++++++++++++++.>.+++.------.--------.<<+.
👍
高評価
0
👎
低評価
0
63 ななしのよっしん
2019/10/22(火) 13:31:34 ID: 4vVOCZjjwY
視覚的に確認出来るやつ2
http://fatiherikli.github.io/brainfuck-visualizer/exit
👍
高評価
1
👎
低評価
0
64 ななしのよっしん
2020/08/13(木) 01:48:21 ID: KBuf8EShtM
+++++++++++++++++++++++++++++++++++++++++++.......
..................................................
...............+++.---............................
.+++.---.......+++..---...+++.-...................
..................................................
..........+.---...................................
....................+++.---.......................
.+++.---...+++.-......+.-........+.-..............
..................................................
(省略しています。全て読むにはこのリンクをクリック!)
👍
高評価
2
👎
低評価
0
65 ななしのよっしん
2020/08/13(木) 01:54:49 ID: KBuf8EShtM
どこかで2桁バイトHello Worldコードを見た気がする
👍
高評価
0
👎
低評価
0
66 ななしのよっしん
2021/09/29(水) 00:32:21 ID: RV7V5bw9W5
>>sm38948201exit_nicovideo
👍
高評価
0
👎
低評価
0
67 ななしのよっしん
2021/10/13(水) 09:14:30 ID: W3oFHIo/0i
>>64
意味を理解して吹いたわ
👍
高評価
1
👎
低評価
0
68 ななしのよっしん
2024/05/27(月) 19:10:09 ID: JKyPjpMR6o
まだよくわかってないんだけど、8種類の記号適当に並べるだけでとりあえず全に実行可になってしまう(シンタックスエラー事実上生じえない)言語じゃないのか、これ
なにかとてつもなく大きな可性を秘めている気がする
👍
高評価
0
👎
低評価
0