Hello! I've been wanting to begin my adventure with electronics for a long time, and without thinking that much about it, i kickstarted it by choosing to build an ALU for mu project on physics. Its nothing to complicated, the logical part is allready done, but i didn't predict electronics would be this confusing.

I've been reading quite a lot about it but there are some things that i can't understand, and sadly my teacher doesn't know much besides what she is supposed to know, so i have nobody to ask.

http://www.dummies.com/how-to/content/electronics-projects-how-to-create-a-transistor-no.html
and i dont understand one thing. When the base of the transistor goes HIGH, it allows the current to flow through the transistor. This ground path through the transistor creates a shortcut that bypasses the output, which causes the output to go LOW.But what is the definition of a shortcut in this case? There are 2 available paths for the current, why doesn't it take the path with the diode or split between 2 paths?

I know this question may seem stiupid to you, but im completely new to electronics. All i know are basics of electricity, which is ohms law and couple others.
Reference image:

If we assume there's some impedance on the output, current flows through the transistor because it's effectively a short circuit to ground (the BJT looks like a short circuit when the base is high, and an open circuit when the base is low, in a simplified model).

Because we assume the transistor is driving something with nonzero impedance (resistance) on the output, current flows through the zero-impedance path rather than go anywhere else. This is why there's a resistor between the supply rail (VCC) and the transistor-- if there weren't, there would effectively be unlimited current flowing through the transistor when on, because there would be a dead short between VCC and GND.
Thank you! Its all much clearer now.
Okay, so i have made a XOR gate using 4 NAND gates. Here is the simulator applet i used:
And here is the circut. Click on File then Import and paste this:

Code:
\$ 1 5.0E-6 10.20027730826997 50 5.0 43
t 160 160 208 160 0 1 0.6262009277122044 0.6381821463329849 100.0
t 160 208 208 208 0 1 0.16587646797966293 0.6291679244752422 100.0
t 336 96 384 96 0 1 0.37195528387207766 0.47520789187434687 100.0
t 336 144 384 144 0 1 -0.15101088839286564 0.4752548225613516 100.0
t 336 240 384 240 0 1 -0.20325125170483377 0.47495334370951003 100.0
t 336 288 384 288 0 1 0.6288662316295033 0.6291679244752422 100.0
t 496 144 544 144 0 1 0.6256125758423393 0.6766801708579545 100.0
t 496 192 544 192 0 1 0.6256681401615507 0.6785062882600826 100.0
w 544 160 544 176 0
w 384 112 384 128 0
w 384 256 384 272 0
w 208 176 208 192 0
s 160 160 112 160 0 0 false
s 160 208 112 208 0 0 false
g 208 224 208 272 0
g 384 160 384 192 0
g 384 304 384 336 0
g 544 208 544 224 0
w 160 160 160 96 0
w 160 96 336 96 0
w 336 288 160 288 0
w 160 208 160 288 0
w 384 80 496 80 0
w 496 80 496 144 0
w 384 224 496 224 0
w 496 224 496 192 0
162 592 128 592 208 1 2.1024259 1.0 0.0 0.0
w 544 208 592 208 0
r 544 128 544 80 0 100.0
w 544 128 592 128 0
r 384 224 432 176 0 1000.0
r 384 80 416 48 0 1000.0
r 208 144 208 80 0 1000.0
r 64 160 112 160 0 1000.0
r 64 208 112 208 0 1000.0
w 208 144 272 144 0
w 272 144 272 240 0
r 272 144 336 144 0 100.0
r 272 240 336 240 0 100.0
w 64 160 64 208 0
R 64 32 32 32 0 0 40.0 5.0 0.0 0.0 0.5
w 64 32 64 160 0
w 208 80 208 32 0
w 208 32 64 32 0
w 432 176 432 32 0
w 416 48 416 32 0
w 544 80 544 32 0
w 544 32 432 32 0
w 432 32 416 32 0
w 416 32 208 32 0

Now i have a 1000 holes in my breadboard so i have to do my best to have as few components as possible if i want to make an alu on it. In the worst case im only going to implement 4 basic logic functions and addition, so that it may be called for an ALU.

Anyway my question is if you see any way to optimize this circut? I mailnly mean resistors, but if there is a better way to combine gates than 4 NANDs then it could help as well.[/url]

Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

»
» All times are GMT - 5 Hours

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum