当サイトの一部ページには、アフィリエイト・アドセンス・アソシエイト・プロモーション広告を掲載しています。

Amazonのアソシエイトとして、Security Akademeiaは適格販売により収入を得ています。

広告配信等の詳細については、プライバシーポリシーページに掲載しています。

消費者庁が、2023年10月1日から施行する景品表示法の規制対象(通称:ステマ規制)にならないよう、配慮して記事を作成しています。もし問題の表現がありましたら、問い合わせページよりご連絡ください。

参考:令和5年10月1日からステルスマーケティングは景品表示法違反となります。 | 消費者庁

ミジンコによるTuring Complete攻略

2024年3月22日

Turing Completeとは

Turing CompleteはCPUアーキテクチャーを学べるパズルゲームです。自作CPUに興味を持っている初心者に最適でしょう。

NANDゲートから始まり、段々と複雑な回路を作り上げて、最終的に4ビットCPUができあがります。そして、そのCPU専用のマシン語を実装し、アセンブリー言語でのプログラミングを体験します。

Steamで約2,000円で販売されています。セールのタイミングで安くなることがあります。

Turing Completeの特徴

  • キャンペーンに用意されたステージを段階を追ってクリアすることで、「デジタル回路⇒CPU設計⇒アセンブリー言語」の順で習得できる。
  • 序盤は比較的簡単だが、中盤からはデジタル回路初心者にとっては厳しいかもしれない。
  • 前提知識があれば、2週間ほど全ステージをクリアできるかもしれない。
    • 私はすべての攻略記事を書きながらだったので、約1.5ヶ月かかった。
  • サンドボックスモードで、ステージ関係なく自由に回路を組める。
  • 作った回路を投稿することもできる。
  • 大幅アップデートにより、一部のステージが変更になる可能性がある。
    • 過去にもそういったことがあった。

得られるスキル

  • デジタル回路の基礎・・・FFやシフトレジスターの実装はあるが、それ以上突っ込むことはない。デジタル回路の本で例えると、前半3分の1ぐらいの基礎が身につく。シミュレーター上で完結するので、リアルの世界にある泥臭いテクニックは不要(逆に習得できない)。
  • 自作CPU・・・4バイト命令のCPUが完成する。複雑な命令はないので、理解しやすい。
  • アセンブリー言語・・・レジスター、条件分岐、スタック、RAMといった基本的なプログラミングスキルは身につく。ハンドアセンブルを体験できるのはよい。たただし、フラグレジスターがないので、リアルなCPUのアセンブリー言語のプログラミングテクニックは扱わない。

ミジンコがTuring Completeを紹介した場面

『ホワイトハッカーの教科書』

『ホワイトハッカーの教科書』のP.154で紹介。遊びながら学べるゲームを4つ紹介したが、その1つがTuring Completeである。

『ホワイトハッカーの教科書』P.154

「第100回 ゆるいハッキング大会」

「ミジンコがTuring CompleteでCPUを自作した話」と題して発表しました。

ステージ構成【2023年版】

各ステージの攻略記事

キャンペーンでは次のステージが用意されています。

下から上のステージに進んでいます。

1. Basic Logicカテゴリー

Basic Logicカテゴリー
ステージNo.ステージ名内容
1.1Crude Awakening
1.2NAND Gate
1.3NOT Gate
1.4.1AND Gate
1.4.2NOR Gate
1.4.3OR Gate
1.5Always ON
1.6Second Tick
1.7XOR Gate
1.8.1Bigger OR Gate
1.8.2Bigger AND Gate
1.9XNOR Gate
Basic Logicカテゴリーのステージ一覧

2. ArithmeticカテゴリーとMemoryカテゴリー

左右に分割されています

ArithmeticカテゴリーとMemoryカテゴリー
ステージNo.ステージ名内容
2.1.1Binary Racer
2.1.2Double Trouble
2.1.3Odd Number of Signals
2.1.4Circular Dependency
2.2.1Counting Signals
2.2.2Half Adder
2.2.3Delayed Lines
2.3.1Double the Number
2.3.2Full Adder
2.3.3Odd Ticks
2.4.1Bit Switch
2.4.2Bit Inverter
2.5.1Byte OR
2.5.2Byte NOT
2.5.3Adding Bytes
2.6.1Negative Numbers
2.6.2Input Selector
2.7.1Signed Negator
2.7.2The Bus
2.7.3Saving Gracefully
2.8Saving Bytes
2.91 Bit Decoder
2.103 Bit Decoder
2.11.1Logic Engine
2.11.2Little Box
2.11.3Counter
ArithmeticカテゴリーとMemoryカテゴリーのステージ一覧

3. CPU Architectureカテゴリー

CPU Architectureカテゴリー
ステージNo.ステージ名内容
3.1.1Arithmetic Engine
3.1.2Registers
3.2Component Factory
3.3Instruction Decoder
3.4Calculations
3.5.1Conditions
2.5.2Program
2.6Immediate Values
2.7Turing Complete
CPU Architectureカテゴリーのステージ一覧

4. Programmingカテゴリー

Programmingカテゴリー
ステージNo.ステージ名内容
4.1Add 5
4.2Calibrating Laser Cannons
4.3.1Spacial Invasion
4.3.2Storage Cracker
4.3.3Masking Time
4.4The Maze
Programmingカテゴリーのステージ一覧

5. CPU Architecture 2カテゴリー

CPU Architecture 2カテゴリー
ステージNo.ステージ名内容
5.1.1XOR
5.1.2Byte Constant
5.2.1Byte XOR
5.2.2Equality
5.3.1Unsigned Less
5.3.2Signed Less
5.4Wide Instructions
5.5Wire Spaghetti
5.6Opcodes
5.7Immediate Values
5.8Conditionals
CPU Architecture 2カテゴリーのステージ一覧

6. Functionsカテゴリー

Functionsカテゴリー
ステージNo.ステージ名内容
6.1.1Hex Racer
6.1.2Shift
6.1.3RAM
6.1.4Delay
6.2.1The Product of Nibbles
6.2.2Stack
6.2.3The Lab
6.3.1Divide
6.3.2PUSH and POP
6.4Functions
Functionsカテゴリーのステージ一覧

7. Assembly Challengesカテゴリー

Assembly Challengesカテゴリー
ステージNo.ステージ名内容
7.1.1AI Showdown
7.1.2Robot Racing
7.1.3Unseen Fruit
7.1.4Delicious Order
7.2.1Dancing Machine
7.2.2Tower of Alloy
7.2.3Planet Names
7.3Water World
Assembly Challengesカテゴリーのステージ一覧

全実績解除を目指す

Turing Completeには実績(Achivement)が用意されています。ストーリーモードを全クリアしたら、力試しに全実績の解除を目指すのはどうでしょうか。

難易度はグローバル実績の達成割合から推定しました。

※アップデートによって実績が増減する可能性があります。

実績名実績解除の条件
Turing CompleteTuring Completeステージをクリアする。
5 Component Full Adder5つの青いコンポーネントだけを使って、Full Adder回路を作成する。
Full Adderステージの解答で実績解除できる。
4 NAND = XOR4つのNANDコンポーネントのみを使ってXOR回路を作成する。
XORステージの別解3で実績解除できる。
Symmetric ALU8ビット用コンポーネントのみを使ってLogic Engine回路を作成する。
Byte Splitterコンポーネントは8ビット用コンポーネントなのでセーフだが、3 Bit Decoderコンポーネントは使えない。
Logic Engineステージの別解などで実績解除できる。
3 Adder Multiply3つを超える8ビット加算器を使わずに(3つはセーフ)、The Product of Nibblesステージを解く。
The Product of Nibblesステージの別解で実績解除できる。
別解は3つの8 Bit Full Adderコンポーネントを使っているのでセーフである。
Tutorial CompleteFunctionsステージをクリアする。
このステージをクリアすると、記念すべき1つ目のCPUが完成したことになる。
Condition 1010つの青いコンポーネントだけを使って、Conditionsステージをクリアする。
Conditionsステージの別解で実績解除できる。
Fast Adder遅延スコア35以下のByte Adder回路を完成させる。
Adding Bytesステージの別解4で実績解除できる。
Water world最終ステージであるWater Worldステージをクリアする。
Binary CounterCounterステージをNANDスコア65以下でクリアする。
Counterステージの別解2で実績解除できる。
FastBot64バイト以下のコードでRobot Raceステージをクリアする。
Robot Raceステージの別解3で実績解除できる。
Helperbot宇宙船の4クエストをすべて完了する。
The Mazeステージをクリアすると迷路の外に出て、4つのクエストすべてにアクセスできるようになる。
攻略記事はこちらから
Best hat【隠し実績】伝説の最高の帽子を入手する。
攻略記事はこちらから
Black hat【隠し実績】帽子売りをハックする。
攻略記事はこちらから
Binary Racer【隠し実績】Binary Racerステージで最終レベル(レベル7)をクリアする。
攻略記事はこちらから
現在、人間には現実的な不可能なレベルといわれている。
実績一覧

ミジンコのプロフィールデータ

Posted by ipusiron