Brainfuck では、プログラム サイズよりも長いテープ サイズを使用するのが最適ですか? それとも逆の方がいいですか?
また、お互いにどのくらいの大きさですか?
私は Arduino 用のブレイン インタープリターを作ろうとしています。これは以前にも行われたことは知っていますが、Adafruit ディスプレイやコード作成機能などを追加しています。
このため、特にコードとテープの両方を配列に格納しているため、コードは非常に長くなります。
char code[] = {};
byte tape[] = {};
メモリは少なくとも 30000 個のセルで構成する必要があります。一部の既存の頭脳明晰プログラムにはそれ以上のセルが必要なため、これは構成可能または無制限にする必要があります。
30000 個のセルを Uno に収めることは決してできないことはわかっていますが、動的メモリが最大のスペースを確保する方法のようです。これを行う方法は何でも感謝します。
現在、「1,807 バイト (88%) の動的メモリ」を使用していますが、それは単なるインタープリターのスケッチですchar code[512] = {};
。byte tape[1024] = {};
そこにもいくつかのコードを押しつぶす必要があります。コードは、興味のある人のためにここにあります。