WEBVTT - Electronics 101: Logic Gates

0:00:00.280 --> 0:00:02.960
<v Speaker 1>Brought to you by the reinvented two thousand twelve Camray.

0:00:03.160 --> 0:00:08.840
<v Speaker 1>It's ready. Are you get in touch with technology? With

0:00:09.000 --> 0:00:17.720
<v Speaker 1>tech Stuff from how stuff works dot com. Hello everyone,

0:00:17.760 --> 0:00:20.720
<v Speaker 1>welcome to tex Stuff. My name is Chris Pollette and

0:00:20.760 --> 0:00:23.680
<v Speaker 1>I am an editor how stuff works dot Com, sitting

0:00:23.680 --> 0:00:26.239
<v Speaker 1>across from me, as always his senior writer, Jonathan Strickland,

0:00:26.400 --> 0:00:29.680
<v Speaker 1>logic clearly dictates that the needs of the many outweigh

0:00:29.720 --> 0:00:34.519
<v Speaker 1>the needs of the few. Okay, so today we're going

0:00:34.600 --> 0:00:37.800
<v Speaker 1>to plug Thank you. Today we're gonna talk about logic gates.

0:00:37.840 --> 0:00:40.320
<v Speaker 1>But before we get started, let's let's let's begin with

0:00:40.360 --> 0:00:44.440
<v Speaker 1>a little Facebook feedback you. This comes from James and

0:00:44.520 --> 0:00:49.519
<v Speaker 1>James's suggestion Electronics one oh one logic gates. Thanks James,

0:00:49.720 --> 0:00:52.239
<v Speaker 1>it was an easy one. Yes, we're going to tackle that,

0:00:52.280 --> 0:00:55.360
<v Speaker 1>but before we do, I have a little listener mail.

0:01:00.280 --> 0:01:02.880
<v Speaker 1>This listener mail comes from Chris and not the Chris

0:01:02.920 --> 0:01:05.360
<v Speaker 1>who's sitting across from me. Chris says, you say in

0:01:05.360 --> 0:01:08.200
<v Speaker 1>your three hundred episode that machine code can't be easily

0:01:08.240 --> 0:01:11.440
<v Speaker 1>read by humans. That got me thinking humans made machines.

0:01:11.480 --> 0:01:13.760
<v Speaker 1>I understand that the best concept at the time was

0:01:13.800 --> 0:01:17.760
<v Speaker 1>to code computers and machines with this complicated and unreadable language.

0:01:17.840 --> 0:01:20.240
<v Speaker 1>But in this day and age, why don't we build

0:01:20.280 --> 0:01:23.240
<v Speaker 1>computers and machines that can understand our language. It just

0:01:23.319 --> 0:01:25.640
<v Speaker 1>seems to me that some kind of cycle humans build

0:01:25.720 --> 0:01:28.720
<v Speaker 1>machines that only understand a complicated language, we adapt to

0:01:28.760 --> 0:01:31.319
<v Speaker 1>that language, and we build programs that translate a simpler

0:01:31.400 --> 0:01:34.560
<v Speaker 1>language to the machine language. Is it possible for computers

0:01:34.600 --> 0:01:38.120
<v Speaker 1>and machines to be built to process information in the

0:01:38.200 --> 0:01:42.560
<v Speaker 1>languages we are accustomed to? Now these two items are

0:01:42.600 --> 0:01:46.319
<v Speaker 1>actually related to one another. You might think, well, one

0:01:46.319 --> 0:01:48.200
<v Speaker 1>of these we're talking about natural language, and the other

0:01:48.200 --> 0:01:50.640
<v Speaker 1>one we're talking about logic gates. How do those end

0:01:50.760 --> 0:01:55.160
<v Speaker 1>up being related? Well, it's because machine code is based

0:01:55.240 --> 0:02:00.560
<v Speaker 1>upon the binary system zeros and ones and logics are

0:02:00.680 --> 0:02:04.200
<v Speaker 1>as well. And it turns out that the way we've

0:02:04.200 --> 0:02:09.000
<v Speaker 1>built computers is based upon this binary system, and that's

0:02:09.040 --> 0:02:12.799
<v Speaker 1>why we have machine code. It's this two humans. It's

0:02:12.840 --> 0:02:15.480
<v Speaker 1>a it's a complex way of trying to get a

0:02:15.520 --> 0:02:18.200
<v Speaker 1>machine to do a relatively simple task, or at least

0:02:18.200 --> 0:02:22.400
<v Speaker 1>one that seems simple to us. And unfortunately, there is

0:02:22.480 --> 0:02:27.400
<v Speaker 1>not an easy way to translate natural human language into

0:02:27.480 --> 0:02:30.840
<v Speaker 1>machine code in order to make a machine understand natural

0:02:30.919 --> 0:02:34.720
<v Speaker 1>language in a on a fundamental level, like on a

0:02:34.760 --> 0:02:40.720
<v Speaker 1>mechanical level, we would have to completely change the foundation

0:02:41.000 --> 0:02:45.360
<v Speaker 1>of computing. Yeah, so that's why it's a big deal. Uh.

0:02:45.600 --> 0:02:47.480
<v Speaker 1>You know. Instead, what we do is we end up

0:02:47.480 --> 0:02:53.560
<v Speaker 1>building programs that can understand on on a superficial level

0:02:54.040 --> 0:02:57.360
<v Speaker 1>what natural language is and translated into machine code so

0:02:57.400 --> 0:03:00.560
<v Speaker 1>that a computer can respond the proper way. It's not

0:03:00.680 --> 0:03:04.799
<v Speaker 1>true understanding, because again, a computer is just running processes.

0:03:05.160 --> 0:03:09.440
<v Speaker 1>It's just running, uh, series of calculations using these zeros

0:03:09.440 --> 0:03:13.919
<v Speaker 1>and ones and logic gates are the very foundation of that.

0:03:14.000 --> 0:03:16.880
<v Speaker 1>It's the foundation of circuit treats, the foundation of electronics,

0:03:16.880 --> 0:03:19.720
<v Speaker 1>and the foundation of computers. But it kind of goes

0:03:19.760 --> 0:03:23.079
<v Speaker 1>back a long way back, in fact, before there were

0:03:23.240 --> 0:03:27.320
<v Speaker 1>electronic computers. Oh yeah, I mean, because you know, I

0:03:27.320 --> 0:03:29.400
<v Speaker 1>I think of it as, uh, well, we actually have

0:03:29.600 --> 0:03:33.000
<v Speaker 1>an interesting article about it, um about something that has

0:03:33.040 --> 0:03:36.120
<v Speaker 1>come up with a couple of centuries ago by a

0:03:36.120 --> 0:03:42.560
<v Speaker 1>guy named George. Yeah you know. Oh yes, because logic

0:03:42.600 --> 0:03:46.640
<v Speaker 1>gates operate using Boolean logic, we have then there is

0:03:46.680 --> 0:03:49.280
<v Speaker 1>an article on how Boolean logic works, on how stuff

0:03:49.280 --> 0:03:51.760
<v Speaker 1>works dot com, I recommend actually, which is basically about

0:03:51.760 --> 0:03:55.000
<v Speaker 1>logic gates, which is kind of funny. I had no

0:03:55.080 --> 0:03:59.280
<v Speaker 1>idea until I started doing research on it um because

0:03:59.280 --> 0:04:02.640
<v Speaker 1>we also have a an article about how electronic gates

0:04:02.680 --> 0:04:07.000
<v Speaker 1>work on the the the site. But there's they're sort

0:04:07.040 --> 0:04:08.920
<v Speaker 1>of hand in hand. It's better probably to go back

0:04:08.920 --> 0:04:11.760
<v Speaker 1>through the bully and logic article first and then go

0:04:11.800 --> 0:04:15.640
<v Speaker 1>to the other um. But yeah, I mean, he basically

0:04:15.680 --> 0:04:18.880
<v Speaker 1>figured out how to use uh, you know, I guess

0:04:19.040 --> 0:04:23.280
<v Speaker 1>it's sort of the marriage of language and mathematical operation

0:04:23.720 --> 0:04:26.839
<v Speaker 1>in some ways, wouldn't you say? Yeah? And I also

0:04:27.120 --> 0:04:31.240
<v Speaker 1>tend to to relate it back to symbolic logic, which

0:04:31.279 --> 0:04:35.520
<v Speaker 1>is another way of marrying mathematics with language. Now, if

0:04:35.520 --> 0:04:39.240
<v Speaker 1>you're not familiar, symbolic logic is a concept where you

0:04:39.400 --> 0:04:44.520
<v Speaker 1>reduce statements to sort of almost like an equation, and

0:04:44.640 --> 0:04:48.320
<v Speaker 1>using the equation form, you evaluate that statement to determine

0:04:48.360 --> 0:04:51.640
<v Speaker 1>whether or not the statement or the combination of statements

0:04:51.760 --> 0:04:55.160
<v Speaker 1>is true or faulse um. And you know, you have

0:04:55.240 --> 0:04:58.280
<v Speaker 1>to make some certain assumptions in order to do that,

0:04:58.279 --> 0:05:03.200
<v Speaker 1>but you can build more and more complex equations using

0:05:03.240 --> 0:05:05.920
<v Speaker 1>all these series of statements to determine if the ultimate

0:05:05.960 --> 0:05:09.080
<v Speaker 1>conclusion is true or false, and by true or faulse,

0:05:09.120 --> 0:05:13.280
<v Speaker 1>we're really talking about whether the argument holds water or not.

0:05:13.680 --> 0:05:16.200
<v Speaker 1>So you can actually do this. You could take a

0:05:16.279 --> 0:05:19.680
<v Speaker 1>debate and you could take one person's side of the debate,

0:05:20.040 --> 0:05:23.720
<v Speaker 1>reduce it to this sort of mathematical equation, and then

0:05:23.800 --> 0:05:27.359
<v Speaker 1>determine whether or not the ultimate outcome of that of

0:05:27.440 --> 0:05:30.599
<v Speaker 1>that person's side of the debate makes sense from a

0:05:30.680 --> 0:05:34.520
<v Speaker 1>logical standpoint. Yeah. Now again we're talking logic here. We're

0:05:34.520 --> 0:05:38.760
<v Speaker 1>not talking about, uh, you know, trying to get someone

0:05:38.839 --> 0:05:42.359
<v Speaker 1>to agree to something based upon its emotional weight, but

0:05:42.600 --> 0:05:45.680
<v Speaker 1>simply does this argument makes sense? Does it follow the

0:05:45.760 --> 0:05:49.160
<v Speaker 1>rules of logic? Yeah? And a lot of these UM

0:05:49.240 --> 0:05:52.880
<v Speaker 1>when we talk about the logic gates UM, they're actually

0:05:52.880 --> 0:05:59.479
<v Speaker 1>devices inside electronics that use these logical operators, these rules,

0:05:59.520 --> 0:06:04.520
<v Speaker 1>these rules within the machine. Basically, they're passing instructions based

0:06:04.560 --> 0:06:06.520
<v Speaker 1>on the type of circuit they are and according I

0:06:06.600 --> 0:06:09.479
<v Speaker 1>actually look this up in Access Science, which is UM

0:06:09.600 --> 0:06:14.040
<v Speaker 1>a really awesome database for for technical things like this. UM. Basically,

0:06:14.080 --> 0:06:17.279
<v Speaker 1>the Access Science said that if you're creating a gate

0:06:17.320 --> 0:06:20.520
<v Speaker 1>circuit UM, they could be made up of transistors, diodes,

0:06:20.600 --> 0:06:24.680
<v Speaker 1>or resistors, in some combination. Now most today are are

0:06:24.720 --> 0:06:27.920
<v Speaker 1>generally transistors only, but they could be made up a

0:06:28.000 --> 0:06:32.240
<v Speaker 1>variety of components um and they're they're basically, you know,

0:06:32.560 --> 0:06:35.080
<v Speaker 1>you hook these up, and you can hook them up

0:06:35.080 --> 0:06:37.400
<v Speaker 1>in a variety of different ways depending on the type

0:06:37.400 --> 0:06:39.480
<v Speaker 1>of device and what you're trying to get it to do.

0:06:40.320 --> 0:06:43.839
<v Speaker 1>Um it. We'll get into that later, but basically, these

0:06:43.920 --> 0:06:48.520
<v Speaker 1>circuits are um a series of components that are wired

0:06:48.520 --> 0:06:52.920
<v Speaker 1>together to perform a logical operation within a device. So

0:06:53.040 --> 0:06:56.200
<v Speaker 1>let's start off from the very very very basic steps.

0:06:56.320 --> 0:07:02.760
<v Speaker 1>So it all begins with bits, zeros, and ones. Now

0:07:03.880 --> 0:07:06.919
<v Speaker 1>this these aren't just numbers zero and one does not

0:07:07.120 --> 0:07:10.440
<v Speaker 1>that doesn't that to us, That doesn't really mean anything

0:07:10.440 --> 0:07:13.200
<v Speaker 1>other than the fact that we can do mathematical processes

0:07:13.400 --> 0:07:17.400
<v Speaker 1>using them. As as as values zero and one um

0:07:17.440 --> 0:07:23.040
<v Speaker 1>they actually translate into other concepts. So a zero in

0:07:23.080 --> 0:07:28.760
<v Speaker 1>an electronics system would be a low voltage meaning zero volts,

0:07:28.880 --> 0:07:31.680
<v Speaker 1>and a one is high voltage, meaning five volts. So

0:07:31.720 --> 0:07:34.760
<v Speaker 1>a one means you've got electrons running through there at

0:07:34.760 --> 0:07:37.320
<v Speaker 1>five vaults. Zero means there are no electrons running through

0:07:37.400 --> 0:07:42.160
<v Speaker 1>zero vaults. But a zero also would mean a false statement.

0:07:43.080 --> 0:07:46.000
<v Speaker 1>One means a true statement. Zero could also be thought

0:07:46.000 --> 0:07:48.880
<v Speaker 1>of as being on in the off position. One is

0:07:48.920 --> 0:07:54.040
<v Speaker 1>in the on position. So let's we have to do.

0:07:54.080 --> 0:07:56.280
<v Speaker 1>You know, zero and one is kind of shorthand of saying.

0:07:56.280 --> 0:07:58.320
<v Speaker 1>So if we're talking about zeros, we're talking about false,

0:07:58.560 --> 0:08:00.240
<v Speaker 1>and we're talking about once, we're talking about true. For

0:08:00.240 --> 0:08:02.120
<v Speaker 1>time about zero's we're talking about low voltage. If we're

0:08:02.120 --> 0:08:04.480
<v Speaker 1>talking about one, we're talking about high voltage. This is

0:08:04.480 --> 0:08:11.080
<v Speaker 1>how we translate ideas conceptually into a real device, a

0:08:11.120 --> 0:08:16.200
<v Speaker 1>physical device that does something one there we go true.

0:08:16.640 --> 0:08:21.280
<v Speaker 1>So now a logic gate will process a signal and

0:08:21.920 --> 0:08:24.240
<v Speaker 1>what it does to that signal, like it has an

0:08:24.240 --> 0:08:27.320
<v Speaker 1>input and an output, what it does to that signal

0:08:27.360 --> 0:08:30.120
<v Speaker 1>when it comes in through the input is based upon

0:08:30.240 --> 0:08:33.400
<v Speaker 1>two things. The nature of the logic gate, because there

0:08:33.400 --> 0:08:37.880
<v Speaker 1>are several different basic types of logic gates, and the

0:08:37.920 --> 0:08:41.240
<v Speaker 1>whether or not the input was true or false, so

0:08:41.320 --> 0:08:43.120
<v Speaker 1>whether or not it was a one or a zero.

0:08:44.120 --> 0:08:47.920
<v Speaker 1>Those two elements will determine what the output of that

0:08:48.000 --> 0:08:52.080
<v Speaker 1>specific logic gate is. And the simplest logic gate is

0:08:52.120 --> 0:08:55.800
<v Speaker 1>a not git that's also known as an inverter. Yes,

0:08:56.040 --> 0:08:58.480
<v Speaker 1>Now inverters what they do is, they will take an

0:08:58.520 --> 0:09:02.600
<v Speaker 1>input and switch it to the opposite output. So, in

0:09:02.640 --> 0:09:07.080
<v Speaker 1>other words, if a zero is fed into a not gate,

0:09:07.240 --> 0:09:10.640
<v Speaker 1>it will produce a one. So false statement comes into

0:09:10.640 --> 0:09:12.880
<v Speaker 1>a not gate, it flips it to a true statement

0:09:12.920 --> 0:09:17.320
<v Speaker 1>coming out right, all right, so or against low voltage

0:09:17.360 --> 0:09:20.320
<v Speaker 1>to high voltage, yes, vice versa. So whatever the signal

0:09:20.360 --> 0:09:25.000
<v Speaker 1>coming into the the not gate is, the opposite goes out.

0:09:25.800 --> 0:09:28.840
<v Speaker 1>Now it can only have one input, which makes it

0:09:28.960 --> 0:09:32.760
<v Speaker 1>unique among the gates. The other gates have two or

0:09:32.880 --> 0:09:35.560
<v Speaker 1>more inputs, and they combine the two in order to

0:09:35.559 --> 0:09:40.160
<v Speaker 1>produce a result. Alright, So then the next one would

0:09:40.200 --> 0:09:45.080
<v Speaker 1>be an and gate. Now and gates will produce a

0:09:45.120 --> 0:09:49.600
<v Speaker 1>true result only if both inputs coming into the gate

0:09:49.679 --> 0:09:52.920
<v Speaker 1>are also true. I think of that like the programming

0:09:52.920 --> 0:09:57.360
<v Speaker 1>statement if then if both are true, then it will

0:09:57.400 --> 0:10:01.679
<v Speaker 1>return true results. So that means that let's say imagine

0:10:01.679 --> 0:10:04.280
<v Speaker 1>that you have this. You can actually imagine that this

0:10:04.360 --> 0:10:06.600
<v Speaker 1>is a gate and there are two roads leading into

0:10:06.600 --> 0:10:09.000
<v Speaker 1>the gate, and you have two cars going up to

0:10:09.120 --> 0:10:14.520
<v Speaker 1>the gate. If both cars are are true, then you've

0:10:14.559 --> 0:10:16.440
<v Speaker 1>got a true result coming out. Otherwise you have a

0:10:16.440 --> 0:10:18.760
<v Speaker 1>false result coming out. Actually, it would be and if

0:10:18.880 --> 0:10:22.240
<v Speaker 1>and only if yes. So, in other words, if you

0:10:22.320 --> 0:10:26.000
<v Speaker 1>have to If you have these two uh inputs coming

0:10:26.000 --> 0:10:29.520
<v Speaker 1>into the and gate and both are a one, so

0:10:29.600 --> 0:10:32.320
<v Speaker 1>both are true, both are high voltage, you get a

0:10:32.320 --> 0:10:34.920
<v Speaker 1>one as a result. Any other combination you get a

0:10:35.040 --> 0:10:38.640
<v Speaker 1>zero as a result a false statement or low voltage.

0:10:38.880 --> 0:10:42.280
<v Speaker 1>Zero and one will equal zero. In this case, zero

0:10:42.400 --> 0:10:45.160
<v Speaker 1>zero will be zero, zero one will be zero, one

0:10:45.320 --> 0:10:47.960
<v Speaker 1>zero will be zero because you have to think of

0:10:48.080 --> 0:10:51.920
<v Speaker 1>all three instances that way. Even though you might say, wait,

0:10:52.000 --> 0:10:54.160
<v Speaker 1>zero one and one zero, isn't that the same thing? No,

0:10:54.360 --> 0:10:57.520
<v Speaker 1>Because you're talking about two different inputs coming into a gate,

0:10:58.240 --> 0:11:00.960
<v Speaker 1>and those two inputs are coming from two different sources.

0:11:01.000 --> 0:11:04.120
<v Speaker 1>Sometimes yeah, sometimes they come from the same source, but

0:11:04.200 --> 0:11:07.000
<v Speaker 1>usually they come from two different sources. And that means

0:11:07.080 --> 0:11:09.720
<v Speaker 1>that because they're coming from two different sources, you have

0:11:09.760 --> 0:11:12.200
<v Speaker 1>two different configurations. You have one where one is true

0:11:12.240 --> 0:11:14.280
<v Speaker 1>and one is faults, and another one where one is

0:11:14.320 --> 0:11:17.120
<v Speaker 1>faults and the other is true. Sounds kind of complicated,

0:11:17.160 --> 0:11:19.480
<v Speaker 1>it's actually pretty simple. And again, if this starts to

0:11:19.600 --> 0:11:22.040
<v Speaker 1>sound confusing, check out these articles that we have on

0:11:22.040 --> 0:11:26.120
<v Speaker 1>our site because they will help illustrate these concepts. So,

0:11:26.480 --> 0:11:29.440
<v Speaker 1>besides the end gate, you have the nand gate or

0:11:29.520 --> 0:11:33.960
<v Speaker 1>not and now and not and will produce a true

0:11:34.000 --> 0:11:38.560
<v Speaker 1>result in every case except where both inputs or more

0:11:38.679 --> 0:11:41.160
<v Speaker 1>are true, because you can have more than two inputs

0:11:41.240 --> 0:11:44.080
<v Speaker 1>in an end or a nand gate. So in other words,

0:11:44.200 --> 0:11:46.960
<v Speaker 1>if you have two zeros, a zero, one, or a

0:11:47.000 --> 0:11:49.360
<v Speaker 1>one zero, you're gonna get a one out of a

0:11:49.440 --> 0:11:52.200
<v Speaker 1>nand gate. If it's a one and one, it's going

0:11:52.240 --> 0:11:55.400
<v Speaker 1>to come out as a zero in a nand gate, right,

0:11:56.120 --> 0:11:59.200
<v Speaker 1>Then you've got the or gate, and or gate will

0:11:59.240 --> 0:12:02.640
<v Speaker 1>produce a true result if at least one of the

0:12:02.720 --> 0:12:07.400
<v Speaker 1>inputs is true, so zero, one, one, zero, and one

0:12:07.440 --> 0:12:10.720
<v Speaker 1>one will all produce a one. Only zero zero produces

0:12:10.760 --> 0:12:13.960
<v Speaker 1>a zero or a false statement. Then you've got the

0:12:14.040 --> 0:12:16.800
<v Speaker 1>Nora gate, which is not or It will produce a

0:12:16.800 --> 0:12:20.520
<v Speaker 1>true result if both inputs are false, so zero zero

0:12:20.679 --> 0:12:23.920
<v Speaker 1>will produce a one zero, one one zero and one

0:12:23.920 --> 0:12:27.839
<v Speaker 1>one will produce a zero. Then you have now all

0:12:27.880 --> 0:12:31.040
<v Speaker 1>of those gates, the the and nand or and nor

0:12:31.160 --> 0:12:35.000
<v Speaker 1>gates can receive multiple inputs. And in order to really

0:12:35.040 --> 0:12:37.199
<v Speaker 1>kind of sort this out, I know it sounds confusing,

0:12:37.440 --> 0:12:40.680
<v Speaker 1>you can actually build a truth table. A truth table

0:12:40.720 --> 0:12:43.319
<v Speaker 1>is essentially just a it's like it's almost like a spreadsheet,

0:12:43.600 --> 0:12:47.880
<v Speaker 1>and it shows you what each scenario, what the outcome

0:12:47.960 --> 0:12:51.280
<v Speaker 1>would be for that particular scenario for that particular gate.

0:12:52.280 --> 0:12:55.680
<v Speaker 1>So like if A equal zero and be equal zero,

0:12:56.120 --> 0:13:00.480
<v Speaker 1>results C will equal whatever I should say result Q

0:13:00.679 --> 0:13:05.120
<v Speaker 1>because that's typically how they label it in uh in diagrams. Yeah,

0:13:05.280 --> 0:13:08.120
<v Speaker 1>they usually use a que to differentiate, so there's no

0:13:08.160 --> 0:13:11.360
<v Speaker 1>confusion that it's zero. They they you use a que

0:13:11.400 --> 0:13:14.319
<v Speaker 1>so that you get the ideas. Oh yeah, that's the output.

0:13:14.960 --> 0:13:17.400
<v Speaker 1>Um yeah, I was just gonna say that truth table

0:13:17.480 --> 0:13:20.640
<v Speaker 1>kind of sounds like a medieval torture device. Him on

0:13:20.760 --> 0:13:28.320
<v Speaker 1>the truth table, nobody resists the machine. I really don't

0:13:28.320 --> 0:13:31.199
<v Speaker 1>know what that would do to you. Um Now I

0:13:31.320 --> 0:13:34.000
<v Speaker 1>just quote Princess Bride, but of this, I was gonna

0:13:34.040 --> 0:13:37.720
<v Speaker 1>say that there's an extra bonus movie quote. Remember this

0:13:37.840 --> 0:13:41.640
<v Speaker 1>is for posterity, so please be honest. There are two

0:13:41.640 --> 0:13:44.360
<v Speaker 1>more gates. Two more gates. Yes, there's X or the

0:13:44.400 --> 0:13:48.000
<v Speaker 1>exclusive or gate, which produces a true result if the

0:13:48.040 --> 0:13:51.760
<v Speaker 1>two inputs are different. So if a zero, zero or

0:13:51.840 --> 0:13:54.080
<v Speaker 1>one one comes into an ex or gate, you're gonna

0:13:54.080 --> 0:13:56.560
<v Speaker 1>get a zero, right if you get a if it's

0:13:56.600 --> 0:13:59.840
<v Speaker 1>one zero or zero, one going into an ex orgate

0:14:00.080 --> 0:14:03.600
<v Speaker 1>get a one. Uh. Now, because of the nature of

0:14:03.640 --> 0:14:07.080
<v Speaker 1>this gate, it can only accept two inputs. You cannot

0:14:07.200 --> 0:14:10.640
<v Speaker 1>you cannot have multiple inputs beyond two in an x

0:14:10.760 --> 0:14:14.080
<v Speaker 1>or gate because it has to be specifically geared that way. Right,

0:14:14.160 --> 0:14:17.800
<v Speaker 1>because because it has to be if it if it's if,

0:14:17.840 --> 0:14:20.800
<v Speaker 1>if they have to be different. Uh, then there are

0:14:20.840 --> 0:14:23.400
<v Speaker 1>only two choices, right, there's a zero, there's a one.

0:14:24.040 --> 0:14:26.680
<v Speaker 1>If you have three inputs going into something and they

0:14:26.720 --> 0:14:28.640
<v Speaker 1>have to be different and there's only two choices, there's

0:14:28.640 --> 0:14:30.760
<v Speaker 1>no way two of those inputs have to be the same.

0:14:31.560 --> 0:14:35.320
<v Speaker 1>Bye bye again following logic. So therefore, and an ex

0:14:35.480 --> 0:14:38.600
<v Speaker 1>or gate, only two inputs can go into that gate.

0:14:38.840 --> 0:14:41.920
<v Speaker 1>Then you have the x nore gate and it produces

0:14:41.960 --> 0:14:44.400
<v Speaker 1>a true result if both inputs are the same. So

0:14:44.480 --> 0:14:46.960
<v Speaker 1>if a zero zero or a one one goes into

0:14:47.000 --> 0:14:49.600
<v Speaker 1>an exnore gate, you get a one. Otherwise you get

0:14:49.600 --> 0:14:51.880
<v Speaker 1>a zero. Same thing as the ex or gate in

0:14:51.880 --> 0:14:56.360
<v Speaker 1>that you can only have two inputs going into that gate. Now,

0:14:57.760 --> 0:15:00.720
<v Speaker 1>using these gates that we have just described here, if

0:15:00.760 --> 0:15:04.160
<v Speaker 1>you build you can actually build up a circuit using

0:15:04.200 --> 0:15:06.800
<v Speaker 1>those as their basic building blocks. In fact, you can

0:15:06.840 --> 0:15:09.360
<v Speaker 1>go to a hobby store and buy chips that have

0:15:09.520 --> 0:15:13.440
<v Speaker 1>logic gates built onto them. Yes, and we were talking

0:15:13.440 --> 0:15:17.480
<v Speaker 1>about the the RDU know a few weeks ago, And

0:15:17.560 --> 0:15:20.000
<v Speaker 1>these are the kinds of projects now if you can

0:15:20.040 --> 0:15:21.880
<v Speaker 1>get a basic grip on this, these are the kinds

0:15:21.880 --> 0:15:23.800
<v Speaker 1>of things that you can add to your projects if

0:15:23.840 --> 0:15:28.080
<v Speaker 1>you're doing um hobbies yourself and want to do this. Now,

0:15:28.440 --> 0:15:30.000
<v Speaker 1>you know, once you get a basic understanding of this,

0:15:30.120 --> 0:15:33.240
<v Speaker 1>you can make much more complex projects. Yeah, so, uh

0:15:33.400 --> 0:15:36.760
<v Speaker 1>you know, we you can consider building a circuit using

0:15:36.800 --> 0:15:40.400
<v Speaker 1>this as as using combinational logic. You're combining various gates

0:15:40.400 --> 0:15:43.120
<v Speaker 1>together in order to get a different results. So you

0:15:43.200 --> 0:15:46.560
<v Speaker 1>might have three inputs going into a system, and then

0:15:46.600 --> 0:15:50.600
<v Speaker 1>you you align various gates in a very in a

0:15:50.640 --> 0:15:54.080
<v Speaker 1>particular sequence in order to get a different result, and

0:15:54.920 --> 0:15:58.040
<v Speaker 1>it all will obey the laws of the truth tables. Now,

0:15:58.080 --> 0:16:01.560
<v Speaker 1>these these circuits can get pretty lunkey and pretty complex,

0:16:01.600 --> 0:16:05.160
<v Speaker 1>which is why we've sort of abandoned the uh you know,

0:16:05.400 --> 0:16:08.080
<v Speaker 1>it works great as a concept. In reality, we've virtualized

0:16:08.120 --> 0:16:10.520
<v Speaker 1>a lot of this since then because it just otherwise

0:16:10.520 --> 0:16:12.800
<v Speaker 1>it would just be a massive piece of hardware in

0:16:12.880 --> 0:16:16.680
<v Speaker 1>order to build a really really complex circuit um. But

0:16:16.840 --> 0:16:20.080
<v Speaker 1>you you can actually lay these out in various configurations

0:16:20.080 --> 0:16:23.160
<v Speaker 1>to get different results. So it might you might have

0:16:23.400 --> 0:16:28.680
<v Speaker 1>uh two inputs going into and and UH gate and

0:16:28.720 --> 0:16:32.000
<v Speaker 1>another input going into a not gate, and then those

0:16:32.080 --> 0:16:36.000
<v Speaker 1>the results of those um of those particular functions will

0:16:36.040 --> 0:16:39.400
<v Speaker 1>go into a third gate and then now that way

0:16:39.440 --> 0:16:41.680
<v Speaker 1>you have something coming out like maybe the maybe those

0:16:41.720 --> 0:16:44.560
<v Speaker 1>are both going into an ex or gate, and then

0:16:44.600 --> 0:16:48.800
<v Speaker 1>whatever the result is is what you're looking for. Uh. These,

0:16:50.000 --> 0:16:52.440
<v Speaker 1>like I said, get pretty clunky pretty fast. The interesting

0:16:52.440 --> 0:16:56.320
<v Speaker 1>thing is you can actually replace the function of some

0:16:56.400 --> 0:16:58.800
<v Speaker 1>of these gates using other gates. You just have to

0:16:58.880 --> 0:17:02.280
<v Speaker 1>put them in the right configu duration to do so.

0:17:02.280 --> 0:17:03.720
<v Speaker 1>So you can think of some of these gates is

0:17:03.720 --> 0:17:06.360
<v Speaker 1>almost being like shorthand like this gate does this one

0:17:06.480 --> 0:17:10.159
<v Speaker 1>function and so therefore uh it does it um. You know,

0:17:10.200 --> 0:17:12.720
<v Speaker 1>that's all it does. You just put that in this place.

0:17:12.760 --> 0:17:15.640
<v Speaker 1>But sometimes you might be working with a system where

0:17:15.640 --> 0:17:18.560
<v Speaker 1>you don't want to have lots of different types of gates.

0:17:18.800 --> 0:17:21.200
<v Speaker 1>You want to use maybe one or two types of

0:17:21.240 --> 0:17:22.760
<v Speaker 1>gates and you don't want to have to deal with

0:17:22.800 --> 0:17:25.199
<v Speaker 1>all the others. Well you can do that. You just

0:17:25.280 --> 0:17:28.320
<v Speaker 1>have to build the gates in the proper sequence in

0:17:28.440 --> 0:17:31.520
<v Speaker 1>order to get the result you want, UH for it

0:17:31.560 --> 0:17:34.320
<v Speaker 1>to to copy the function of one of the other gates.

0:17:34.359 --> 0:17:36.600
<v Speaker 1>And there's various ways of doing this. Now, it does

0:17:36.680 --> 0:17:40.520
<v Speaker 1>mean that you're going to use more gates overall usually

0:17:41.000 --> 0:17:43.600
<v Speaker 1>than you would if you were using the the different types,

0:17:43.640 --> 0:17:46.560
<v Speaker 1>but you would all be using the same type of gates.

0:17:46.560 --> 0:17:49.280
<v Speaker 1>So you're you've reduced it to a single type of gate,

0:17:49.600 --> 0:17:52.400
<v Speaker 1>but you you're using more of that particular gate than

0:17:52.440 --> 0:17:54.800
<v Speaker 1>you would if you were using multiple types of gates.

0:17:55.960 --> 0:17:59.080
<v Speaker 1>Sounds a little complicated, but it does. It does mean

0:17:59.119 --> 0:18:02.240
<v Speaker 1>that when you're sketching it out, it really cuts down

0:18:02.320 --> 0:18:04.440
<v Speaker 1>on the sort of gates that you have to design

0:18:04.800 --> 0:18:08.520
<v Speaker 1>when you're when you're at least conceptually building your circuitry. Now,

0:18:10.160 --> 0:18:12.840
<v Speaker 1>go ahead, and I was just gonna say that these

0:18:12.920 --> 0:18:16.919
<v Speaker 1>these gates can be run in parallel or in a series,

0:18:17.280 --> 0:18:20.040
<v Speaker 1>and um it actually kind of reminds me in a

0:18:20.080 --> 0:18:25.399
<v Speaker 1>way of a very complex UH railway, because I mean,

0:18:25.440 --> 0:18:28.560
<v Speaker 1>you're basically using these switches to control the flow of

0:18:28.600 --> 0:18:35.199
<v Speaker 1>information in your electronic device. Um So as a you know,

0:18:35.240 --> 0:18:37.879
<v Speaker 1>as someone would watch the board and make sure that

0:18:37.880 --> 0:18:41.840
<v Speaker 1>the trains don't collide. Um. You're also sort of you know,

0:18:41.960 --> 0:18:44.960
<v Speaker 1>you can actually control the way information flows through the

0:18:45.520 --> 0:18:48.000
<v Speaker 1>device using these switches, and you can place them in

0:18:48.040 --> 0:18:51.680
<v Speaker 1>ways that make the most sense to to what you're

0:18:51.680 --> 0:18:53.800
<v Speaker 1>trying to carry out, which is essentially what you just said.

0:18:53.800 --> 0:18:58.359
<v Speaker 1>But um, it helps me think about this conceptually, to

0:18:58.880 --> 0:19:02.080
<v Speaker 1>put it in and out analogy from that to something

0:19:02.119 --> 0:19:04.560
<v Speaker 1>that I can think about, like trains, because trains are

0:19:04.640 --> 0:19:06.800
<v Speaker 1>nice and and if you wanna, you know, if you

0:19:06.800 --> 0:19:09.199
<v Speaker 1>really want to get into this, each of these gates

0:19:09.240 --> 0:19:15.840
<v Speaker 1>has a particular um graphical representation of you know, what

0:19:15.960 --> 0:19:19.280
<v Speaker 1>it does. So it's I'm not bothering describing it on

0:19:19.320 --> 0:19:21.280
<v Speaker 1>the podcast because this is an audio podcast. It would

0:19:21.320 --> 0:19:23.280
<v Speaker 1>be kind of it would be kind of pointless to

0:19:23.320 --> 0:19:25.800
<v Speaker 1>do it. And the shapes, the shapes aren't you know,

0:19:26.280 --> 0:19:29.040
<v Speaker 1>like a circle or a triangle or a square something

0:19:29.080 --> 0:19:32.679
<v Speaker 1>that is uh easy to describe, a lot of these

0:19:32.680 --> 0:19:35.920
<v Speaker 1>shapes are modifications of those types of things. So you

0:19:36.000 --> 0:19:38.480
<v Speaker 1>might say a trianglar looking thing, but you're really not

0:19:38.520 --> 0:19:40.840
<v Speaker 1>going to get it. It makes more sense to actually

0:19:40.840 --> 0:19:43.200
<v Speaker 1>go to a website that has them all laid out,

0:19:43.520 --> 0:19:46.639
<v Speaker 1>and then once you learn what the the sort of

0:19:46.760 --> 0:19:50.119
<v Speaker 1>graphic representation of a gate what it looks like. You

0:19:50.160 --> 0:19:54.359
<v Speaker 1>can start looking at um the combination of gates and say, oh,

0:19:54.400 --> 0:19:56.920
<v Speaker 1>well that's an and gate. So that means that since

0:19:56.960 --> 0:20:00.560
<v Speaker 1>I know that and gates always give a result, that is,

0:20:00.760 --> 0:20:02.959
<v Speaker 1>it will produce a true result only if both inputs

0:20:03.000 --> 0:20:05.159
<v Speaker 1>are true. I know what the output of this end

0:20:05.200 --> 0:20:08.080
<v Speaker 1>gate will be depending upon the inputs. So, because it's

0:20:08.080 --> 0:20:10.400
<v Speaker 1>always going to behave the same way, it's never going

0:20:10.440 --> 0:20:13.959
<v Speaker 1>to behave uh in a way opposite or different unless

0:20:13.960 --> 0:20:17.040
<v Speaker 1>you you know, well never, it will never do that.

0:20:17.320 --> 0:20:19.080
<v Speaker 1>It's only if you were using a nand gate that

0:20:19.119 --> 0:20:23.440
<v Speaker 1>it would be different than the way it normally is. UM.

0:20:23.560 --> 0:20:26.880
<v Speaker 1>So that way, since you know how each gate behaves

0:20:26.920 --> 0:20:32.000
<v Speaker 1>in any specific circumstance given time, you can decipher what

0:20:32.240 --> 0:20:35.800
<v Speaker 1>a fairly complex diagram will do. You just say, all right,

0:20:35.920 --> 0:20:39.200
<v Speaker 1>I know that this gate always behaves this way. Therefore,

0:20:39.960 --> 0:20:44.480
<v Speaker 1>this is what would happen given this particular series of inputs.

0:20:44.920 --> 0:20:47.119
<v Speaker 1>You can actually build out a truth table for a

0:20:47.119 --> 0:20:50.199
<v Speaker 1>complex circuit that way, and you will ultimately know what

0:20:50.359 --> 0:20:55.080
<v Speaker 1>the circuit will produce given any particular set of circumstances. Now,

0:20:55.119 --> 0:20:57.680
<v Speaker 1>the more complex a circuit gets the wider that truth

0:20:57.720 --> 0:20:59.800
<v Speaker 1>table is gonna be, and the more you're gonna have

0:20:59.840 --> 0:21:02.480
<v Speaker 1>to really check to make sure you're following the logical

0:21:02.560 --> 0:21:07.400
<v Speaker 1>rules so that the results are are accurate, um other

0:21:07.520 --> 0:21:10.600
<v Speaker 1>and we call this, we actually call this programming a circuit.

0:21:10.720 --> 0:21:13.320
<v Speaker 1>Even though you might think of programming is something you

0:21:13.359 --> 0:21:17.199
<v Speaker 1>do sitting down typing on a keyboard. This and this

0:21:17.240 --> 0:21:21.879
<v Speaker 1>involves actual physically hooking up wires to logic gates in

0:21:21.920 --> 0:21:25.359
<v Speaker 1>whatever sequence or series you need. Uh, we still call

0:21:25.400 --> 0:21:28.320
<v Speaker 1>that programming. Yeah, an engineer might graft this out using

0:21:28.359 --> 0:21:31.119
<v Speaker 1>these symbols on a piece of paper to get an

0:21:31.160 --> 0:21:33.959
<v Speaker 1>idea of how it works. But logic gates can be

0:21:34.080 --> 0:21:36.480
<v Speaker 1>very very small. I mean, we're we we've talked about

0:21:36.520 --> 0:21:39.240
<v Speaker 1>the manufacture of transistors before. I mean, you can have

0:21:39.960 --> 0:21:43.840
<v Speaker 1>millions of transistors and a very small piece of silicon

0:21:44.600 --> 0:21:48.320
<v Speaker 1>and the logic gates I mean, using the metal oxide

0:21:48.359 --> 0:21:53.040
<v Speaker 1>semiconductor UH type, which is apparently predominant according to Access

0:21:53.040 --> 0:21:56.840
<v Speaker 1>Science and manufacturing today, you can have many, many of

0:21:56.880 --> 0:21:59.399
<v Speaker 1>these devices. So it helps I mean, I think it

0:21:59.400 --> 0:22:01.280
<v Speaker 1>would help me if I were trying to figure out

0:22:01.320 --> 0:22:03.960
<v Speaker 1>exactly how I wanted to lay out this device to

0:22:04.080 --> 0:22:06.399
<v Speaker 1>have it you know, drafted out with these symbols and

0:22:06.440 --> 0:22:08.399
<v Speaker 1>get an idea of how it's it's working. I'm sure

0:22:08.440 --> 0:22:11.440
<v Speaker 1>a lot of them use computers. Actually have a program

0:22:11.440 --> 0:22:15.400
<v Speaker 1>that I use for information architecture that has a template

0:22:15.440 --> 0:22:17.160
<v Speaker 1>with all these symbols on there, and then you can,

0:22:17.200 --> 0:22:18.600
<v Speaker 1>you know, put it up on the screen and get

0:22:18.640 --> 0:22:20.760
<v Speaker 1>an idea of how it works. But that's far larger

0:22:20.800 --> 0:22:24.280
<v Speaker 1>than the actual devices because the manufacturing process can make

0:22:24.280 --> 0:22:26.800
<v Speaker 1>them very very tiny, right, And as we've said in

0:22:26.920 --> 0:22:31.040
<v Speaker 1>other podcasts, this is part of why miniaturization has some

0:22:31.400 --> 0:22:34.760
<v Speaker 1>uh some challenges, uh that go along with it. I mean,

0:22:34.760 --> 0:22:36.320
<v Speaker 1>there are a lot of different challenges, but one of

0:22:36.320 --> 0:22:39.359
<v Speaker 1>the challenges is that by getting these gates to be

0:22:39.480 --> 0:22:42.720
<v Speaker 1>smaller and smaller, each each element on a transistor is

0:22:42.800 --> 0:22:46.240
<v Speaker 1>decreasing in size. Remember, if we're following Moore's law, then

0:22:46.280 --> 0:22:48.320
<v Speaker 1>ideally you're going to be able to fit twice as

0:22:48.359 --> 0:22:51.840
<v Speaker 1>many discrete elements on a chip within twenty four months,

0:22:51.920 --> 0:22:54.960
<v Speaker 1>or at least the the number of discrete elements on

0:22:55.000 --> 0:22:56.800
<v Speaker 1>a chip will be twice as many as it would

0:22:56.800 --> 0:22:59.679
<v Speaker 1>have been twenty four months before, so two years before

0:23:00.359 --> 0:23:05.480
<v Speaker 1>um with that, with those elements decreasing in size. At

0:23:05.520 --> 0:23:08.200
<v Speaker 1>that pace, you start to run up against some pretty

0:23:08.280 --> 0:23:10.440
<v Speaker 1>challenging issues and we've talked about it several times on

0:23:10.480 --> 0:23:14.439
<v Speaker 1>the podcast before, Like electron tunneling. So if you have

0:23:14.480 --> 0:23:18.800
<v Speaker 1>a gate that determines how what the result it needs

0:23:18.840 --> 0:23:21.960
<v Speaker 1>to be from any given inputs, um, if you have

0:23:22.000 --> 0:23:25.919
<v Speaker 1>an electron that can tunnel past that gate, then it

0:23:26.119 --> 0:23:29.040
<v Speaker 1>overrides the function of that gate, which means it will

0:23:29.080 --> 0:23:32.600
<v Speaker 1>start creating errors in your calculations. You know, you think

0:23:32.640 --> 0:23:35.119
<v Speaker 1>about these these gates being so small that electron can

0:23:35.119 --> 0:23:37.560
<v Speaker 1>tunnel through them. And by the way, electrons don't really

0:23:37.560 --> 0:23:39.800
<v Speaker 1>tunnel through them, they just appear on the other side

0:23:39.840 --> 0:23:41.840
<v Speaker 1>of the gate. Actually, if you think of it this way,

0:23:42.040 --> 0:23:44.800
<v Speaker 1>think of as an electron as just being a uh.

0:23:45.000 --> 0:23:48.320
<v Speaker 1>It's you can predict that electron will appear somewhere within

0:23:48.359 --> 0:23:50.840
<v Speaker 1>a given area, all right, but you don't know the

0:23:50.880 --> 0:23:55.119
<v Speaker 1>specific location of that electron. So within a given area,

0:23:55.240 --> 0:23:57.600
<v Speaker 1>think of it like a sphere. You've got the sphere,

0:23:57.720 --> 0:24:01.760
<v Speaker 1>and somewhere inside that sphere is this electron. Right as

0:24:01.800 --> 0:24:05.879
<v Speaker 1>that sphere approaches the gate, then part of that sphere

0:24:05.960 --> 0:24:09.520
<v Speaker 1>is going to go over the gate. Uh and meaning

0:24:09.520 --> 0:24:12.440
<v Speaker 1>that the electron could in theory somehow exists on the

0:24:12.440 --> 0:24:15.439
<v Speaker 1>other side of that gate without passing through it. That

0:24:15.520 --> 0:24:18.119
<v Speaker 1>means that because there is a chance that the electron

0:24:18.119 --> 0:24:20.240
<v Speaker 1>could somehow exist on the other side of that gate

0:24:20.240 --> 0:24:23.639
<v Speaker 1>without passing through it, sometimes it does. Because there's a chance,

0:24:24.040 --> 0:24:26.359
<v Speaker 1>yes and anything that if there is a chance for

0:24:26.440 --> 0:24:29.399
<v Speaker 1>something to happen eventually, sooner or later, it happens. So

0:24:29.760 --> 0:24:31.840
<v Speaker 1>that's the definition of chance. If there's no chance that

0:24:31.920 --> 0:24:37.679
<v Speaker 1>it won't happen. So right, exactly, there's Schrodinger shake fist.

0:24:38.200 --> 0:24:41.200
<v Speaker 1>Actually it's more like Heisenberg's and certainty principle. But anyway, um,

0:24:41.600 --> 0:24:44.040
<v Speaker 1>but I was thinking you just weren't sure about it,

0:24:44.119 --> 0:24:46.679
<v Speaker 1>right exactly, there you go. So anyway, the electron, because

0:24:46.680 --> 0:24:48.880
<v Speaker 1>it can sometimes be on the other side of that gates.

0:24:48.920 --> 0:24:50.760
<v Speaker 1>Sometimes it is on the other side of that gate.

0:24:50.800 --> 0:24:52.440
<v Speaker 1>That's one of the challenges we have when we get

0:24:52.480 --> 0:24:55.040
<v Speaker 1>these these gates at these tiny, tiny size. You know

0:24:55.119 --> 0:24:58.440
<v Speaker 1>that the thickness is not thick enough to prevent electron

0:24:58.480 --> 0:25:02.720
<v Speaker 1>tunneling unless start switching to other materials which are more

0:25:02.720 --> 0:25:05.840
<v Speaker 1>resistant to electron tunneling, which is so complex. I still

0:25:05.880 --> 0:25:07.320
<v Speaker 1>have not gotten a good grip on it. So I

0:25:07.320 --> 0:25:10.000
<v Speaker 1>can't really explain why that is. I just know that

0:25:10.160 --> 0:25:14.600
<v Speaker 1>really smart people at Intel have figured it out. Anyway. Uh,

0:25:14.640 --> 0:25:16.439
<v Speaker 1>that's one of the reasons why we talk about this

0:25:16.520 --> 0:25:20.920
<v Speaker 1>miniaturization process being a challenge to keeping Moore's Law going

0:25:21.119 --> 0:25:23.239
<v Speaker 1>because remember More's Law is not truly a law, it's

0:25:23.280 --> 0:25:26.760
<v Speaker 1>an observation, and companies are struggling to make sure that

0:25:26.800 --> 0:25:30.159
<v Speaker 1>they meet the expectation laid out in that observation and

0:25:30.320 --> 0:25:34.200
<v Speaker 1>self fulfilling prophecy. Yes, yeah, because once More's Law ends,

0:25:34.280 --> 0:25:36.359
<v Speaker 1>then you know, the chaos will rain and robots will

0:25:36.359 --> 0:25:39.400
<v Speaker 1>take over the earth and etcetera, and zombies and brains anyway.

0:25:39.480 --> 0:25:43.760
<v Speaker 1>So um again, because logic gates are the very basis

0:25:43.880 --> 0:25:47.440
<v Speaker 1>of these calculations. If the electron ignores the logic gate,

0:25:48.040 --> 0:25:52.200
<v Speaker 1>computing stops working. So that's why we talk about electron tunneling,

0:25:52.280 --> 0:25:56.680
<v Speaker 1>quantum mechanics, and quantum engineering in relation to microprocessors, because

0:25:56.680 --> 0:25:59.720
<v Speaker 1>they're built on this foundation of logic gates and they

0:25:59.720 --> 0:26:03.359
<v Speaker 1>are basic. Microprocessor is going to be so complex that

0:26:03.480 --> 0:26:06.160
<v Speaker 1>to sketch it out and a logic gate formation would

0:26:06.200 --> 0:26:11.000
<v Speaker 1>be pretty intense. But the nice thing is you can

0:26:11.080 --> 0:26:13.520
<v Speaker 1>learn the basics of this pretty simply, like I said,

0:26:13.600 --> 0:26:15.760
<v Speaker 1>you go to a couple of websites and look at

0:26:15.920 --> 0:26:18.960
<v Speaker 1>how the logic gates are are displayed in a in

0:26:19.040 --> 0:26:21.480
<v Speaker 1>a sketch. And you can even go out to a

0:26:21.520 --> 0:26:23.920
<v Speaker 1>hobby store and buy chips that have logic gates on

0:26:23.960 --> 0:26:26.359
<v Speaker 1>them and learn how to hook them up yourself and

0:26:26.480 --> 0:26:30.719
<v Speaker 1>see it in action. It's pretty cool. It's a it's

0:26:30.760 --> 0:26:33.040
<v Speaker 1>a neat project. There's a neat way to really start

0:26:33.080 --> 0:26:37.479
<v Speaker 1>getting your feet wet in designing electronics, and there are

0:26:37.480 --> 0:26:40.320
<v Speaker 1>plenty of different tutorials out there to explain how to

0:26:40.400 --> 0:26:42.959
<v Speaker 1>do that and what why you would do that, Like

0:26:43.000 --> 0:26:44.560
<v Speaker 1>you know, yeah, I've hooked up a lot of wires

0:26:44.640 --> 0:26:46.800
<v Speaker 1>to this thing and it's doing this thing, but I

0:26:46.800 --> 0:26:48.840
<v Speaker 1>have no idea why it's doing it or or what's

0:26:48.840 --> 0:26:52.399
<v Speaker 1>the purpose. This is just the foundation, the building blocks

0:26:53.119 --> 0:26:56.119
<v Speaker 1>um and then hopefully maybe in the future podcasts we

0:26:56.160 --> 0:27:00.680
<v Speaker 1>can go into stuff like sequential logic, as we're talking

0:27:00.680 --> 0:27:05.080
<v Speaker 1>about combinational logic right now. Sequential logic depends on other

0:27:05.200 --> 0:27:10.000
<v Speaker 1>concepts like state, like an information state. You know, we

0:27:10.080 --> 0:27:13.800
<v Speaker 1>say that an information has state if it carries over

0:27:13.880 --> 0:27:16.919
<v Speaker 1>information from previous calculations. If I were to give you

0:27:16.960 --> 0:27:20.000
<v Speaker 1>a simple calculation. If I were to say, all right,

0:27:20.440 --> 0:27:23.720
<v Speaker 1>add one variable to another variable and you get a

0:27:24.080 --> 0:27:27.000
<v Speaker 1>sum of those two variables. All right, Well, there's no

0:27:27.119 --> 0:27:30.399
<v Speaker 1>state in that in that function I just gave you,

0:27:30.440 --> 0:27:33.159
<v Speaker 1>because you could take any two variables you wanted and

0:27:33.200 --> 0:27:36.560
<v Speaker 1>you're going to get a sum. But there's that that

0:27:36.680 --> 0:27:39.760
<v Speaker 1>sum has no information on it based upon the previous

0:27:39.920 --> 0:27:43.400
<v Speaker 1>two numbers you added to it, right, Because you might say,

0:27:43.400 --> 0:27:44.960
<v Speaker 1>all right, for this one, I'm going to add three

0:27:44.960 --> 0:27:46.640
<v Speaker 1>and four I got seven, And this one i'm gonna

0:27:46.680 --> 0:27:50.240
<v Speaker 1>add five and nine I got fourteen, and they have

0:27:50.320 --> 0:27:54.359
<v Speaker 1>no bearing on each other. Information that has a state

0:27:54.520 --> 0:27:58.480
<v Speaker 1>has bearing upon previous calculations, and that's very important for computing.

0:27:58.520 --> 0:28:00.720
<v Speaker 1>Without it, computers would own we be able to do

0:28:01.160 --> 0:28:03.720
<v Speaker 1>really one function and then the next function will have

0:28:03.800 --> 0:28:06.359
<v Speaker 1>nothing to do with the next uh with the with

0:28:06.400 --> 0:28:08.200
<v Speaker 1>the one you did before. So it would be impossible

0:28:08.200 --> 0:28:10.840
<v Speaker 1>to really build a program. You would have to have

0:28:10.880 --> 0:28:13.720
<v Speaker 1>something that has some form of state so it can

0:28:13.800 --> 0:28:17.960
<v Speaker 1>build upon what has come previously. That really goes into

0:28:17.960 --> 0:28:20.919
<v Speaker 1>sequential logic. It's its own thing. We will tackle that

0:28:21.000 --> 0:28:23.640
<v Speaker 1>in a different podcast, because that's gonna have some more

0:28:23.840 --> 0:28:27.080
<v Speaker 1>kind of complex conversations to kind of get into you know,

0:28:27.160 --> 0:28:29.800
<v Speaker 1>what sequential logic is, what it means, and how do

0:28:29.880 --> 0:28:33.560
<v Speaker 1>we achieve it. But but really you can't get there

0:28:34.040 --> 0:28:38.280
<v Speaker 1>without first looking at the logic gates issue. So I

0:28:38.360 --> 0:28:41.520
<v Speaker 1>want to thank our listeners who have requested logic Gates

0:28:41.560 --> 0:28:44.400
<v Speaker 1>because it is a really important topic. It's a really

0:28:44.440 --> 0:28:46.880
<v Speaker 1>fun topic really if you like puzzles. I I was

0:28:46.920 --> 0:28:49.800
<v Speaker 1>telling Chris before this that symbolic logic is one of

0:28:49.840 --> 0:28:52.400
<v Speaker 1>my was one of my favorite classes in college. I

0:28:52.760 --> 0:28:56.600
<v Speaker 1>was in English literature major with a focus on shakespearean

0:28:57.000 --> 0:29:02.520
<v Speaker 1>uh drama, but somehow symbolic logic became one of my

0:29:02.600 --> 0:29:06.200
<v Speaker 1>favorite classes because it just made sense to me. And

0:29:06.280 --> 0:29:09.760
<v Speaker 1>I love these sort of puzzles where you just you

0:29:09.800 --> 0:29:12.240
<v Speaker 1>look at this big picture and it looks really complex

0:29:12.360 --> 0:29:15.560
<v Speaker 1>and really overwhelming, but if you just know the rules,

0:29:16.080 --> 0:29:19.719
<v Speaker 1>with enough time and attention, you can figure out how

0:29:19.760 --> 0:29:23.720
<v Speaker 1>it all works. And that's amazing. I don't know, I'm

0:29:24.040 --> 0:29:26.960
<v Speaker 1>pretty illogical. I'm not sure. Well I I when I'm

0:29:27.000 --> 0:29:29.440
<v Speaker 1>saying you, I really mean me, I don't mean you

0:29:30.360 --> 0:29:35.560
<v Speaker 1>you Okay. So anyway, that covers our episode on logic gates.

0:29:35.680 --> 0:29:38.680
<v Speaker 1>If you have any requests for particular episodes, whether they

0:29:38.720 --> 0:29:41.880
<v Speaker 1>be really technical or not so technical, just let us know.

0:29:42.040 --> 0:29:44.600
<v Speaker 1>You can say as an email that address is tech

0:29:44.640 --> 0:29:47.840
<v Speaker 1>stuff at how stuff Works dot com, or you can

0:29:47.960 --> 0:29:51.000
<v Speaker 1>send us a request via Twitter or Facebook or handle

0:29:51.040 --> 0:29:53.560
<v Speaker 1>at both of those is tech Stuff h SW. And

0:29:53.600 --> 0:29:57.080
<v Speaker 1>we should also point out recently we launched a brand

0:29:57.080 --> 0:30:00.360
<v Speaker 1>new iPad app, So if you are an iPad owner

0:30:00.480 --> 0:30:02.880
<v Speaker 1>like the fellow sitting across the table for me, and

0:30:02.960 --> 0:30:05.880
<v Speaker 1>you want to have some fun with a new app

0:30:05.960 --> 0:30:08.800
<v Speaker 1>that has a lot of our great content all bundled

0:30:08.800 --> 0:30:12.800
<v Speaker 1>in their specifically designed for the layout on the iPad,

0:30:13.160 --> 0:30:15.760
<v Speaker 1>check that out because it's been, uh, it's been really

0:30:15.800 --> 0:30:17.880
<v Speaker 1>impressing everyone around the office for a couple of weeks,

0:30:17.920 --> 0:30:19.680
<v Speaker 1>and now that it's out there in the wild, we're

0:30:19.720 --> 0:30:23.240
<v Speaker 1>really excited to see what people think. And Chris and

0:30:23.280 --> 0:30:26.040
<v Speaker 1>I will talk to you again, hopefully with a little

0:30:26.040 --> 0:30:31.120
<v Speaker 1>bit of logic really soon. Be sure to check out

0:30:31.160 --> 0:30:34.320
<v Speaker 1>our new video podcast, Stuff from the Future. Join How

0:30:34.400 --> 0:30:37.600
<v Speaker 1>Stuffwork staff as we explore the most promising and perplexing

0:30:37.680 --> 0:30:42.360
<v Speaker 1>possibilities of tomorrow. The House Stuff Works iPhone app has arrived.

0:30:42.480 --> 0:30:49.640
<v Speaker 1>Download it today on iTunes. Brought to you by the

0:30:49.640 --> 0:30:53.040
<v Speaker 1>reinvented two thousand twelve Camray. It's ready, Are you