コミュ障プログラミング言語
ナビゲーションに移動
検索に移動
コミュ障プログラミング言語は、Brainfuckの派生言語。
命令[編集]
BrainfuckおよびBrainCrashと対応する命令が用意されているが、「.」の実行内容が日本語環境向けに変更されているほか、独自の命令が6つ追加されている。これ以外はコメントとして無視される。
BF/BC | コミュ障 | 実行内容 |
---|---|---|
> | アア… | ポインタをインクリメント(ポインタの位置を1つ進める) |
< | アア、 | ポインタをデクリメント(ポインタの位置を1つ戻す) |
+ | ア… | 現在ポインタが指している値をインクリメント(+1する) |
- | ア、 | 現在ポインタが指している値をデクリメント(-1する) |
. | エット… | 現在ポインタが指している値(の文字コード番号に該当する文字)を出力 ※ BrainfuckやBrainCrashと異なり、文字コードはShift_JISに対応している。出力する文字が2バイト文字の1バイト目に該当する場合は、次のポインタの位置の値を2バイト目として出力する。 |
, | エット、 | 現在ポインタが指している値に、入力から読み込んだ1バイトを代入 |
[ | サセン… | 現在ポインタが指している値が0であれば、対応する「ッス…」の直後にジャンプ |
] | ッス… | 現在ポインタが指している値が0でなければ、対応する「サセン…」の直後にジャンプ |
以下はBrainfuckに存在しない命令。 | ||
| | アッ… | ポインタの位置を1つ進め、もともとポインタが指していた値と現在ポインタが指している値をビットOR演算し、現在ポインタが指している値に代入 |
& | アッ、 | ポインタの位置を1つ進め、もともとポインタが指していた値と現在ポインタが指している値をビットAND演算し、現在ポインタが指している値に代入 |
~ | アノ… | 現在ポインタが指している値をビットNOT演算し、現在ポインタが指している値に代入 |
^ | アノ、 | ポインタの位置を1つ進め、もともとポインタが指していた値と現在ポインタが指している値をビットXOR演算し、現在ポインタが指している値に代入 |
以下はBrainfuckにもBrainCrashにも存在しない命令。ただし、コミュ障プログラミング言語の製作者によってBrainfuck・BrainCrashの命令符号が与えられている。 | ||
* | アー… | 現在ポインタが指している値を1ビットだけ左シフトする |
/ | アー、 | 現在ポインタが指している値を1ビットだけ右シフトする |
{ | エ… | 現在ポインタが指している値だけ、ポインタの位置を進める |
} | エ、 | 現在ポインタが指している値だけ、ポインタの位置を戻す |
! | エッ… | 現在ポインタが指している値を0にする |
? | エッ? | ポインタの位置を先頭に戻す |
例[編集]
ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…サセン…アア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…アア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…アア、アア、ア、ッス…アア…アア…ア、ア、ア、アア、エット…アア…アア…ア…ア…ア…ア…ア…ア…サセン…アア、ア、ア、ア、ア、ア、ア、ア、アア…ア、ッス…アア、ア、アア、エット…ア、アア…アア…ア…ア…ア…ア…ア…ア…ア…ア…サセン…アア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、アア…ア、ッス…アア、ア、アア、エット…アア…アア…ア…ア…ア…サセン…アア、ア、ア、ア、ア、ア、アア…ア、ッス…アア、エット…アア…ア…ア…ア…ア…ア…サセン…アア、アア、ア…ア…ア…アア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…アア…ア、ッス…アア、ア…ア…ア…アア、エット…ア…アア…ア、ア、ア、ア、ア、アア、エット…ア、ア、ア、ア、アア…アア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…サセン…アア、ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…ア…アア…ア、ッス…アア、ア…アア、エット…ア…アア…アア…ア…ア…ア…ア…ア…ア…サセン…アア、アア、ア、ア、アア…ア、ア、ア、ア、ア、ア、ア、アア…ア、ッス…アア、ア、アア、エット…アア…ア…ア…ア…アア、エット…ア、アア…アア…ア…ア…ア…ア…ア…ア…ア…ア…サセン…アア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、ア、アア…ア、ッス…アア、ア、アア、エット…
出力[編集]
はい、2人組作ってー