100% Guide

100% Guide

BASIC LOGIC


100% Guide image 1

100% Guide image 2
100% Guide image 3
100% Guide image 4
100% Guide image 5
100% Guide image 6
100% Guide image 7
100% Guide image 8
100% Guide image 9
100% Guide image 10
100% Guide image 11
100% Guide image 12

Crude AwakeningSimply draw a wire from the in to the out.

NAND GateThe logic of the NAND gate lies in the fact that the only time it does not output a signal is when both of its inputs are "on."

NOT GateThe logic of the NOT gate (otherwise known as an inverter) is that it simply reverses whatever signal it receives. In other words, if it receives an "on" signal, it outputs an "off" signal; and vice versa, it outputs "on" when it receives an "off" signal.

OR GateThe logic of the OR gate is that it simply outputs the signal of either of its inputs, with "on" taking priority. In other words, if either of its inputs is "on" it outputs an "on" signal; otherwise, it outputs an "off" signal.

NOR GateThe logic of the NOR gate is simply the opposite of the OR gate. In other words, it outputs an "on" signal only when neither of its inputs receives an "on" signal.

AND GateMuch like OR/NOR, the AND gate is simply the opposite of the NAND gate. In other words, it outputs an "on" signal only when both of its inputs receive an "on" signal.

Always OnAs its name suggests, the logic of the Always On always outputs an "on" signal.

Second TickAgain, as its name suggests, the logic of the Second Tick only outputs an "on" signal during the second tick of tests. In other words, when its first input receives an "on" signal and its second input receives an "off" signal.

XOR GateSlightly different from the OR gate, the XOR gate still outputs "on" when either of its inputs receives an "on" signal; however, it outputs an "off" when both inputs receive an "on" signal.

Bigger OR GateThis is simply a larger version of the OR gate that receives three inputs. It outputs an "on" signal when at least one of its inputs receives an "on" signal.

Bigger AND GateMuch like the Bigger OR gate, this one is simply a larger version of the AND gate. It outputs an "on" signal only when all three of its inputs receive "on" signals.

XNOR GateThis gate is simply the oppositte of the XOR gate. It outputs an "on" signal when its two inputs are identical; regardless of what their actual value is.

ARITHMETIC


100% Guide image 37
100% Guide image 38
100% Guide image 39
100% Guide image 40
100% Guide image 41
100% Guide image 42
100% Guide image 43
100% Guide image 44
100% Guide image 45
100% Guide image 46
100% Guide image 47
100% Guide image 48
100% Guide image 49
100% Guide image 50

Binary RacerDue to the random nature of the questions, it is difficult to show images of solutions for this level. To put it simply, You are given eight inputs (referred to as bits) you just need to add the correct bits in order to reach the total required. For example, if we think of the bits as being either "1" or "0" and we understand that each bit has a value equal to a power of 2, then we can read each bits value as follows:

Bit Value Power 00000001 1 2 to the power of 0 00000010 2 2 to the power of 1 00000100 4 2 to the power of 2 00001000 8 2 to the power of 3 00010000 16 2 to the power of 4 00100000 32 2 to the power of 5 01000000 64 2 to the power of 6 10000000 128 2 to the power of 7

Using this table, we can find the value of any 8 bit number by simply adding. For example:

8 bit Value 00100101 32+4+1=37 11000100 128+64+4=196 Due to the fact that this level gives you a specified amount of time to answer each question, it may be difficult at first; but you don't lose the game for losing the level, so feel free to attempt as many times as necessary.

Double TroubleThe logic for Double Trouble is that it simply requires you to output an "on" signal when at least two of the inputs are receiving an "on" signal.

ODD Number of SignalsMuch like the previous level, this one requires an "on" signal output when the inputs receive a particular number of "on" signals. The difference here is that we only output an "on" signal when an odd number of inputs receive an "on" signal. In other words, when either 1 or 3 inputs are "on" we output an "on" signal.

Counting SignalsAs the name suggests, this level requires us to count the input signals. The output component has 3 nodes on it and operates much like a Byte Maker; the first (top) node has a value of 1, the second (middle) has a value of 2, and the third (bottom) has a value of 4.

Half AdderAs the name suggests, this level performs addition using the inputs. Everything is computed in binary; meaning that "1+1=2" is written as "01+01=10" with one output called "SUM" being the main value (for if the value is 0 or 1) and the other output called "CAR" being the carry (for if the value is 2).

Double the NumberAs the name suggests, in this level you simply have to double the value of whatever the input is. With the provided Byte Splitter/Byte Maker components, this is extremely easy; as you can simply pass each bit to its doubled value bit (i.e. 1 to 2, 2 to 4, 4 to 8, and so on).

Full AdderMuch like Half Adder, this level performs addition using the inputs. The difference is that it uses a total of three inputs/bits; so, now we can have a value of three with the "SUM" output still being for values of 0 (off) or 1 (on) and the "CAR" output still being the carry for when we have a value of 2 (when it's on). Due to the composition of the components, both "SUM" and "CAR" can be on at the same time, making the total value of three.

Byte ORMuch like the name suggests, this level simply ORs each pair of corresponding bits within two byte values.

Byte NOTMuch like the name suggests, this level simply NOTs each individual bit within a byte value.

Adding BytesMuch like the name suggests, this level adds together two byte values. The composition of components is rather complex, however.

Negative NumbersIn this level, you are required to devise some way of representing negative numbers. The solution is to simply take the left-most bit (the one that by default has a value of 128) and make it negative (set it to a value of -128). This allows you to represent any number from -128 all the way to 127 using only a single byte.

SwitchMuch like the name suggests, this level requires you to devise a literal switch that, when turned on, allows a byte of data to pass through.

Signed negatorIn order to understand the logic of this level, you need to understand 2's Complement. Basically, 2's Complement simply NOTs a value, and then adds one to it in order to get the negative of the original value.

1 bit decoderThe logic of this level is much like the Switch level. Based on the input, this component will choose between two outputs. If the input is "on" then it will choose one output, and if the input is "off" then it will choose the other.

3 bit decoderMuch like the 1 bit decoder, the logic of this level uses the possible combinations of 3 inputs to select between 8 different outputs.

One WayAs the name suggests, this level requires you to make a "one way" circuit. This component, referred to as a buffer, prevents signals from traveling in both directions down a wire and allows you to mitigate interference in larger compositions.

MEMORY


100% Guide image 87
100% Guide image 88
100% Guide image 89
100% Guide image 90
100% Guide image 91
100% Guide image 92
100% Guide image 93
100% Guide image 94

Circular DependencyThis is a tutorial level that simply requires you to create a circuit whose input depends on it's output.

Tangled Gates

Saving GracefullyThis level requires you to set the logic for 1 bit of memory. Basically, it creates a single bit with a "switch" like mechanism that allows you to save and load whether or not that bit is on or off. This is also referred to as an S/R Latch.

Bit InverterThis level requires you to create a circuit that inverts the value of its inputs. This level is quite simply and literally just an XOR gate.

Input SelectorMuch like how the 1 bit decoder decides between two outputs, this component goes in reverse and uses switches to select between two inputs. This is also referred to as a Multiplexer.

Saving BytesThis level is simply an upgraded version of the Saving Gracefully level. Using S/R Latches, you need to create 1 byte of memory. This is also referred to as a Register.

Little BoxIn this level, you are required to create 4 bytes of memory within limited space. This level can be quite difficult to complete unless you keep your wires well organized. This level is the "building blocks" of RAM.

CounterAs the name suggests, this level requires you to devise a Counter component. When not provided with a value, the counter will simply "count" by a set amount. When provided with a value and told to do so, it will overwrite its count with the provided value.

CPU ARCHITECTURE


100% Guide image 111
100% Guide image 112
100% Guide image 113
100% Guide image 114
100% Guide image 115
100% Guide image 116
100% Guide image 117
100% Guide image 118

Logic EngineAs the name suggests, here the goal is to create an engine that can perform logical computations on a set of two inputs using a third input to decide which logical computation to perform. This solution unlocks an achievement.

Arithmetic EngineAs the name suggests, here the goal is to add arithmetic computations to our Logic Engine.

RegistersThis level practically gives you the solution (albeit in words) and requires you to incorporate six of the Register components we created previously.

Component FactoryThis isn't so much of a level as it is what the name suggests: a factory for making custom components. In this area, you can create components using any or all of the previous components included in the base game. As an example, when you complete the Arithmetic Engine level, an ALU component is created in the factory that you can use in further levels to complete them and conserve space within the level.

Instruction DecoderWithin the previous levels (both Engine levels and the Registers level) we were given several possible commands/instructions to incorporate. This level tasks us with creating a component that will decode exactly which branch of instructions we are looking at; whether it be Immediate, Calculate, Copy, or Condition.

CalculationsThis level requires that you create the "Overture" architecture; which means that your computer circuit needs to be able to discern between copy instructions and calculation instructions. This is relatively simple because you can simply incorporate your ALU and DEC custom components into the circuit design, as shown below.

Note: Here I use the Register Plus custom component in order to make things easier because using regular registers makes wiring far more difficult to do. The blueprint for the Register Plus component can be found at the very end of this guide.

ConditionsHere, it is required to output whether the input value matches a provided condition (which basically amounts to a value from 0 to 7).

ProgramHere, the requirement is simply to "replace the input code with the program component" and, if everything has gone well so far, you should be able to use the exact same solution as the previous Calculations level.

Immediate ValuesHere, we simply have to add another switch, another buffer, and a few more connecting wires to our circuit in order to incorporate the processing of immediate values; because sometimes we want a program to have a constant value instead of having to calculate it (think "Max Level" in some game; basically any value that will never change no matter what you do within the game).

Turing CompleteHere we simply add in our previously created Conditions custom component so that, as the level states, memory can influence code (think if statements and jump commands). Once we're done...

Congratulations! You finally have a circuit fully capable of performing any type of computation!

Programming

I have this section completed within the game; however it is currently late where I am and I'm going to sleep and then work on this again in the morning. Toodles.

Source: https://steamcommunity.com/sharedfiles/filedetails/?id=2686200253					

More Turing Complete guilds