Circuit Intro
Sections
3. Circuit Equation (part 1)
4. Circuit Equation (part 2)
5. Circuit Equation (part 3)
6. Boolean Logic
7. Circuit: or
8. Circuit: xor
9. Circuit: nand (part 1)
10. Circuit: nand (part 2)
11. Using the nand Operator
12. Circuit: or
13. Circuit: and
14. Arithmetic and Logic
15. Circuit: and
16. Circuit: or
 InstructionsConnect the block on the left to the block on the right. Then, remove the connection. GoalsConnect block a to the output block. Disconnect block a from the output block. Below there are two blocks - one labeled `a`, and another labeled `Output`. On each of those blocks you'll see a small blue circle. These circle are the input and output points for the block they're attached to. Circles on the right side of a block are outputs - they send a value. Circles on the left side of a block are inputs - they receive a value. Here, block `a` only has one output point while the `Output` block only has one input point. To connect the blocks, click and hold on output of block `a` (the circle on its right side), and drag over to the input of the `Output` block (circle on its left side). You should see a light blue line stretch out from block `a`. When you've reached the input of the `Output` block, drop the connection. The light blue line should turn solid blue and the `Output` block should show the same value as block `a`. These blocks are now connected. Changes to the value of block `a` will be sent through the connection to the `Output` block. To disconnect the blocks, just click on the dark blue connecting line between the blocks. The line will disappear, and the blocks will no longer be connected. The value of the `Output` block will change to ? a1 Output0 .bigModal { width: 90%; margin-left: -45%; /* width/2 */ } .sensorBox { position: relative; min-height: 100px; width: 160px; vertical-align: top; display: inline-block; margin: 10px; padding: 6px; background-color: #f5f5ff; /*border: solid 1px #ddd; box-shadow: 4px 4px #ddd;*/ border-top: solid 4px #00adef; border-bottom: solid 1px #00adef; border-radius: 2px; cursor: pointer; } .sensorBox:hover{ background-color: #dcdcff; } .sensorName { font-weight: bold; font-size: 14px; color: #000; } .optionLabel { line-height: 16px; } .sensorSelectorOptions{ display:inline-block; margin-left:20px; } .bigModal { width: 90%; margin-left: -45%; /* width/2 */ } .blockBox { position: relative; min-height: 100px; width: 160px; vertical-align: top; display: inline-block; margin: 10px; padding: 6px; background-color: #f5f5ff; /*border: solid 1px #ddd; box-shadow: 4px 4px #ddd;*/ border-top: solid 4px #00adef; border-bottom: solid 1px #00adef; border-radius: 2px; cursor: pointer; } .blockBox:hover{ background-color: #dcdcff; } .blockName { font-weight: bold; font-size: 14px; color: #000; } .optionLabel { line-height: 16px; } .blockSelectorOptions{ display:inline-block; margin-left:20px; }
 InstructionsConnect the blue circles to build a circuit that adds a and b. You can click a link to delete it. GoalsConnect blocks so output equals 3. Now we've added a new type of block that has inputs and outputs. The addition block, labeled with `+`, has two inputs and one output. This block takes the values of its inputs, adds them together, and sends the new value to its output. Using the same drag-and-drop method from the last section, create a circuit that will add the values of block `a` and block `b`, and change the value of the `Output` block to 3. a1 b2 Output0 +0 .bigModal { width: 90%; margin-left: -45%; /* width/2 */ } .sensorBox { position: relative; min-height: 100px; width: 160px; vertical-align: top; display: inline-block; margin: 10px; padding: 6px; background-color: #f5f5ff; /*border: solid 1px #ddd; box-shadow: 4px 4px #ddd;*/ border-top: solid 4px #00adef; border-bottom: solid 1px #00adef; border-radius: 2px; cursor: pointer; } .sensorBox:hover{ background-color: #dcdcff; } .sensorName { font-weight: bold; font-size: 14px; color: #000; } .optionLabel { line-height: 16px; } .sensorSelectorOptions{ display:inline-block; margin-left:20px; } .bigModal { width: 90%; margin-left: -45%; /* width/2 */ } .blockBox { position: relative; min-height: 100px; width: 160px; vertical-align: top; display: inline-block; margin: 10px; padding: 6px; background-color: #f5f5ff; /*border: solid 1px #ddd; box-shadow: 4px 4px #ddd;*/ border-top: solid 4px #00adef; border-bottom: solid 1px #00adef; border-radius: 2px; cursor: pointer; } .blockBox:hover{ background-color: #dcdcff; } .blockName { font-weight: bold; font-size: 14px; color: #000; } .optionLabel { line-height: 16px; } .blockSelectorOptions{ display:inline-block; margin-left:20px; }
3. Circuit Equation (part 1)
Create a circuit that represents this formula:
a × b
a
0
b
0
Output
0
2
2
+
0
×
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
4. Circuit Equation (part 2)
Create a circuit that represents this formula:
a + 2 × b
a
b
Output
0
2
2
×
0
+
0
×
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
5. Circuit Equation (part 3)
Create a circuit that represents this formula:
2 × a + 2 × b
a
b
Output
0
2
2
+
0
+
0
×
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
6. Boolean Logic
We will use 1 to represent true and 0 to represent false. Review these operators:
• not a: true if a is false; false if a is true
• a or b: true if either a or b is true
• a and b: true if both a and b are true
• a xor b: true if a or b is true, but not both
• a nand b: equivalent to not (a and b); false if a and b are true; true otherwise

7. Circuit: or
Create a circuit that represents this formula:
a or b
a
b
Output
0
and
0
or
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
8. Circuit: xor
Create a circuit that represents this formula:
a xor b
a
b
Output
0
and
0
or
0
not
0
and
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
9. Circuit: nand (part 1)
Create a circuit that represents this formula:
a nand b
a
b
Output
0
and
0
or
0
not
0
and
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
10. Circuit: nand (part 2)
Create a circuit that represents this formula:
a nand b
a
b
Output
0
not
0
not
0
or
0
and
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
11. Using the nand Operator
We can construct all of the other boolean operators using just the nand operator.
In fact, we could construct a computer using just the nand operator.

12. Circuit: or
Create a circuit that represents this formula:
a or b
a
b
Output
0
nand
0
nand
0
nand
0
Hint: Try connecting both nand inputs to a single block; this converts the nand operator into a not operator. (Remember that nand is the same as and followed by not.)

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
13. Circuit: and
Create a circuit that represents this formula:
a and b
a
b
Output
0
nand
0
nand
0
nand
0
Hint: Try connecting both nand inputs to a single block; this converts the nand operator into a not operator. (Remember that nand is the same as and followed by not.)

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
14. Arithmetic and Logic
A boolean logic network is analogous to a mathematic network.

The and operator is similar to multiplication for 0/1 values:
a × b is 1 if both a and b are 1.

Also the or operator is similar to addition.

15. Circuit: and
Create a circuit that represents this formula:
a and b
a
b
Output
0
+
0
×
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
16. Circuit: or
Create a circuit that represents this formula:
a or b
a
b
Output
0
+
0
×
0
+
0
-
0

Make sure your circuit works for each input combination:
Show? a b Output Desired Output Good?
0 0
0 1
1 0
1 1
17. Lesson Done
 InstructionsYou have completed the lesson. You may scroll up to review the lesson.