This is a complicated topic built on very simple ideas. If you go step by step you should be able to wrap your head around it.

**What is a semi-conductor?** Starting all the way down at the atomic level. In pure silicon crystals, the atoms are neatly arranged, and all have their outer electron shell full, so it won't conduct electricity because all the electrons are nice and cosy. By adding impurities into the crystal, we make two types of semiconductors,: P and N. N  (negative) has more electrons, so it's willing to give them away and P has fewer electrons (positive) so it's glad to take in electrons.

You [put a chunk of N next to P](_URL_4_) and you have a diode. Pass electric current (aka a flow of electrons, but in the other direction) through it in the P-N direction, and the electrons will flow freely. however if you pass current in the N-P direction, the part where the two semiconducting materials meet will become "full" of electrons, like natural silicon crystals, building a wall between the N and P where electrons don't want to move, and any new electrons will hit that wall and won't be able to move forward, instead they'll just keep building that cosy wall.

So we can force electricity to only pass one way through a circuit, pretty cool...now what?

**What is a transistor?** By [sandwiching semiconductors](_URL_3_) in an N-P-N or P-N-P way, and attaching electrodes (wires), we have a component that will behave differently depending where the electron flow comes from. This was first used as an amplifier (like a transistor radio), But can also be [used as a switch](_URL_1_).

Depending which part you put current in, what comes out of the transistor will either be current or no current.

**Logic circuits.**
Now that we have this little thing that can switch depending on if it has current or not, we can string a bunch of them together in various ways to make boolean logic circuits. boolean just means you either have yes or no, or, in binary, 1 or 0.

Here's a [NAND gate](_URL_0_), meaning *not and*, as you can see it pretty much looks like a transistor, because it is! You have two inputs, and if A has current (A=1) and B has current (B=1), it will put out a 0 (because it's a *not and*).

[Here's a basic XOR, *exclusive or* gate](_URL_2_), meaning that A need to be 1 or B needs to be 1 for Q to be 1, but if A and B are both 0 or both 1, Q will be 0. This is just one way basic AND or NAND gates can be strung together.

Now slap a few billion of these together in a CPU and you have a logic machine that can do all kinds of calculations.
(sorry for the brief ending, I ran out of time, hope you learned something)

EDIT: thanks to all the other people explaining boolean arithmetic on a higher level. Teamwork, yay!

EDIT2: Fixed some links and hopefully cleared up the confusion between electron flow and current.
මෙය ඉතා සරල අදහස් මත ගොඩනැගුණු සංකීර්ණ මාතෘකාවකි. අඩියෙන් අඩිය ගියොත් ඔළුව ඔතා ගන්න පුළුවන් වෙන්න ඕන. **අර්ධ සන්නායකයක් යනු කුමක්ද?** පරමාණුක මට්ටමින් පහළට ආරම්භ වේ. පිරිසිදු සිලිකන් ස්ඵටිකවල, පරමාණු පිළිවෙලට සකස් කර ඇති අතර, ඒවායේ පිටත ඉලෙක්ට්‍රෝන කවචය පිරී ඇත, එබැවින් සියලුම ඉලෙක්ට්‍රෝන හොඳ සහ සුවපහසු බැවින් එය විදුලිය සන්නයනය නොකරයි. ස්ඵටිකයට අපද්‍රව්‍ය එකතු කිරීමෙන්, අපි අර්ධ සන්නායක වර්ග දෙකක් සාදන්නෙමු: P සහ N. N (සෘණ) වැඩි ඉලෙක්ට්‍රෝන ඇති බැවින් ඒවා ලබා දීමට කැමති වන අතර P සතුව ඉලෙක්ට්‍රෝන අඩු (ධනාත්මක) ඇති බැවින් ඉලෙක්ට්‍රෝන ලබා ගැනීම සතුටට කරුණකි. ඔබ [P](_URL_4_) අසලින් N කොටසක් තබා ඔබට ඩයෝඩයක් ඇත. PN දිශාවට විදුලි ධාරාවක් (එනම් ඉලෙක්ට්‍රෝන ගලා යාමක්, නමුත් අනෙක් දිශාවට) එය හරහා ගමන් කරන්න, එවිට ඉලෙක්ට්‍රෝන නිදහසේ ගලා යයි. කෙසේ වෙතත්, ඔබ NP දිශාවට ධාරාව ගමන් කළහොත්, අර්ධ සන්නායක ද්‍රව්‍ය දෙක හමුවන කොටස, ස්වාභාවික සිලිකන් ස්ඵටික වැනි ඉලෙක්ට්‍රෝන වලින් &quot;පූර්ණ&quot; බවට පත් වනු ඇත, N සහ P අතර ඉලෙක්ට්‍රෝන චලනය වීමට අවශ්‍ය නොවන තාප්පයක් ගොඩනගනු ඇත. නව ඉලෙක්ට්‍රෝන එම බිත්තියට පහර දෙන අතර ඉදිරියට යාමට නොහැකි වනු ඇත, ඒ වෙනුවට ඔවුන් එම සුවපහසු බිත්තිය ගොඩනඟනු ඇත. ඒ නිසා අපිට විදුලිය බලහත්කාරයෙන් පරිපථයක් හරහා එක් මාර්ගයකට පමණක් ගමන් කළ හැකිය, ලස්සනයි... දැන් මොකද? ** ට්‍රාන්සිස්ටරයක් යනු කුමක්ද?** NPN හෝ PNP ආකාරයෙන් [සැන්ඩ්විච් අර්ධ සන්නායක](_URL_3_) මගින් සහ ඉලෙක්ට්‍රෝඩ (වයර්) ඇමිණීමෙන්, ඉලෙක්ට්‍රෝන ප්‍රවාහය පැමිණෙන්නේ කොතැනින්ද යන්න අනුව වෙනස් ලෙස හැසිරෙන සංරචකයක් අප සතුව ඇත. මෙය මුලින්ම ඇම්ප්ලිෆයර් ලෙස භාවිතා කරන ලදී (ට්‍රාන්සිස්ටර රේඩියෝවක් වැනි), නමුත් [ස්විචයක් ලෙසද භාවිතා කළ හැක](_URL_1_). ඔබ ධාරාව දමන්නේ කුමන කොටසටද යන්න මත, ට්‍රාන්සිස්ටරයෙන් පිටවන දෙය ධාරාව හෝ ධාරාවක් නැත. **Logic circuits.** දැන් අපිට මේ පොඩි දෙයක් තියෙනවා ඒකෙ කරන්ට් එක තියනවද නැද්ද කියන එක අනුව මාරු වෙන්න පුලුවන්, අපිට පුලුවන් ඒවයින් පොකුරක් විවිධ ක්‍රම වලට එකතු කරලා boolean logic circuits හදන්න. boolean යන්නෙන් අදහස් වන්නේ ඔබට ඔව් හෝ නැත, නැතහොත්, ද්විමය වශයෙන්, 1 හෝ 0 යන්නයි. මෙහි [NAND ද්වාරයක්](_URL_0_), එනම් *නැහැ සහ*, ඔබට පෙනෙන පරිදි එය ට්‍රාන්සිස්ටරයක් මෙන් පෙනේ, මන්ද එය ! ඔබට ආදාන දෙකක් ඇති අතර, A ධාරාවක් (A=1) සහ B ධාරාවක් (B=1) තිබේ නම්, එය 0ක් නිකුත් කරයි (එය *නොවන සහ* නිසා). [මෙන්න මූලික XOR, *සුවිශේෂී හෝ* ද්වාරයක්](_URL_2_), එනම් A අවශ්‍යතාවය 1 වීමට හෝ B 1 වීමට Q සඳහා 1 වීමට අවශ්‍යයි, නමුත් A සහ B දෙකම 0 හෝ දෙකම 1 නම්, Q වනු ඇත 0. මෙය මූලික AND හෝ NAND ගේට්ටු එකට බැඳිය හැකි එක් මාර්ගයක් පමණි. දැන් මේවායින් බිලියන කිහිපයක් CPU එකක එකට ගසන්න, ඔබට සියලු වර්ගවල ගණනය කිරීම් කළ හැකි තාර්කික යන්ත්‍රයක් තිබේ. (කෙටි අවසානය ගැන කණගාටුයි, මට කාලය ඉවරයි, ඔබ යමක් ඉගෙන ගත්තා යැයි බලාපොරොත්තු වෙනවා) සංස්කරණය කරන්න: බූලියන් අංක ගණිතය ඉහළ මට්ටමකින් පැහැදිලි කරන අනෙක් සියලුම දෙනාට ස්තූතියි. කණ්ඩායම් වැඩ, ඔව්! EDIT2: සමහර සබැඳි සවි කර ඇති අතර ඉලෙක්ට්‍රෝන ප්‍රවාහය සහ ධාරාව අතර ඇති ව්‍යාකූලත්වය ඉවත් කිරීමට බලාපොරොත්තු වේ.