Instructions in pictures

Download PDF — the whole book

khHARDWARE BASICSbuild kits · khanin.infoBuildinginstructionsHB-02How a CPU Countslessons 1–6 · from a bit to a calculatorsimulator: cs.khanin.info© 2026 Daniil Khanin · khanin.info · HB-021
How to read these instructions3step number — follow strictly in orderAND2×16×parts for this step: how many to placeANDAxByYza part with labels on its pinsCLKCLKlabels with the same name are connectedAYchip ports: input [ and output ]DFFblue frame — building a chipCANVASgrey tab — the main canvaslowyellow ring — what has changedremove a part together with its labels2×double-click a label — new name3chip built in the lesson with this numbercheck: this is how it should workKeysVVCC (1)GGND (0)NtransistorIswitchOlampLlabelKclockUbutton[port in]port outCtrl+G — into a chipon a Mac Ctrl = Cmd© 2026 Daniil Khanin · khanin.info · HB-022
A little history1642Pascal: wheels1673Leibniz: the drum1937Stibitz: relays1971Intel 4004nowyou build itPeople added on the abacus too. The hard part is the carry: ten piled up — clear the digitand add one to the next. Pascal built a machine where a wheel going from 9 to 0pushed the next one by itself. Leibniz's idea grew into arithmometers — in every office until the 1970s.In 1937 George Stibitz built a binary adder on his kitchen table from two relays,a battery and light bulbs: lit is 1, dark is 0. Exactly what you build in the first lesson.Relays gave way to vacuum tubes, tubes to transistors, but the adder stayed in every processor:it adds, subtracts, compares and computes addresses. The first microprocessor, the Intel 4004,was made for a calculator — so it could also do the decimal "+6" correction.+1Intel and Bell Labs are trademarks of their respective owners. This kit is not affiliated with or endorsed by them.© 2026 Daniil Khanin · khanin.info · HB-023
1Half addergates from transistors, then 1 + 1 = 10khHB-021A01B0HAABSCCS1 + 1 = 10IN13×OUT8×P11×N11×VCC1×GND1×02×2×∞Ctrl+GNOTNANDNORANDORXORHA© 2026 Daniil Khanin · khanin.info · HB-024
NOT1IN1×OUT1×P1×N1×6×I0O0VCCO0GPI0O0GNDGNI02Ctrl+GLibrary…Chip N2×Library…NOTEnterNOTI0O0© 2026 Daniil Khanin · khanin.info · HB-025
NAND3IN2×OUT1×P2×N1×9×I0I1O0VCCO0GPI0VCCO0GPI1O0midGNI04N1×3×midGNDGNI15Ctrl+GLibrary…Chip N2×Library…NANDEnterNANDI0I1O0© 2026 Daniil Khanin · khanin.info · HB-026
NOR6IN2×OUT1×P2×N1×9×I0I1O0VCCmidGPI0midO0GPI1O0GNDGNI07N1×3×O0GNDGNI18Ctrl+GLibrary…Chip N2×Library…NOREnterNORI0I1O0© 2026 Daniil Khanin · khanin.info · HB-027
AND9IN2×OUT1×P2×N1×9×I0I1O0VCCnGPI0VCCnGPI1nmidGNI010N2×P1×9×midGNDGNI1VCCO0GPnO0GNDGNn11Ctrl+GLibrary…Chip N2×Library…ANDEnterANDI0I1O0© 2026 Daniil Khanin · khanin.info · HB-028
OR12IN2×OUT1×P2×N1×9×I0I1O0VCCmidGPI0midnGPI1nGNDGNI013N2×P1×9×nGNDGNI1VCCO0GPnO0GNDGNn14Ctrl+GLibrary…Chip N2×Library…OREnterORI0I1O0© 2026 Daniil Khanin · khanin.info · HB-029
XOR15IN2×OUT1×OR1×NAND1×AND1×9×I0I1O0ORI0I0I1I1O0oNANDI0I0I1I1O0nANDI0oI1nO0O016Ctrl+GLibrary…Chip N2×Library…XOREnterXORI0I1O0© 2026 Daniil Khanin · khanin.info · HB-0210
HACANVAS17IN2×OUT2×XOR1×AND1×6×ABSCXORI0AI1BO0SANDI0AI1BO0C18Ctrl+GLibrary…Chip N2×Library…HAEnterHAABSC19VCC1×GND1×02×4×VCCVCCGNDGND0A0B© 2026 Daniil Khanin · khanin.info · HB-0211
CANVAS …20HA1×2×6×HAAABBSSCCSC0A01B0CS0 + 1 = 011A01B0CS1 + 1 = 10© 2026 Daniil Khanin · khanin.info · HB-0212
24 bitsthe full adder FA and four digits in a chainkhHB-02A0A31A21A11A0B1B30B20B11B016S7 + 9 = 16IN12×OUT7×HA2×1OR1×108×4b0A3×∞Ctrl+GFAADDER4© 2026 Daniil Khanin · khanin.info · HB-0213
CANVASFA1Delete0A0BHAAABBSSCCSC2IN3×OUT2×HA2×1OR1×111×ABCISCOHAAABBSs1Cc1HAAs1BCISSCc2ORI0c1I1c2O0CO© 2026 Daniil Khanin · khanin.info · HB-0214
FA …ADDER43Ctrl+GLibrary…Chip N2×Library…FAEnterFAABCISCO4IN9×OUT5×A0A1A2A3B0B1B2B3CIS0S1S2S3CO5FA3×15×FAAA0BB0CICISS0COc1FAAA1BB1CIc1SS1COc2FAAA2BB2CIc2SS2COc3© 2026 Daniil Khanin · khanin.info · HB-0215
ADDER4 …CANVAS6FA1×5×FAAA3BB3CIc3SS3COCO7Ctrl+GLibrary…Chip N2×Library…ADDER4EnterADDER4A0A1A2A3B0B1B2B3CIS0S1S2S3CO805×5×0A00A10A20A30B0© 2026 Daniil Khanin · khanin.info · HB-0216
CANVAS …903×3×0B10B20B310ADDER41×14×ADDER4A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3CIGNDS0S0S1S1S2S2S3S3COS4114b0A3×4bDECA4bDECB8bDECSA0A30A21A11A0B0B31B20B10B07SA0A31A21A11A0B1B30B20B11B016S© 2026 Daniil Khanin · khanin.info · HB-0217
3Subtraction and flagstwo's complement, the SUB switch, lamps C Z N VkhHB-02A0A30A21A11A0B0B31B20B11B01SUB1110SCZNV3 − 5 = −2IN10×OUT6×XOR6×1ADDER41×2AND1×109×OR2×1NOR1×14×4b0A3×∞Ctrl+GADDSUB4© 2026 Daniil Khanin · khanin.info · HB-0218
CANVAS1Delete0A00A10A20A30B00B10B20B34bDECA2Delete4bDECB8bDECS3DeleteADDER4A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3CIGNDS0S0S1S1S2S2S3S3COS4© 2026 Daniil Khanin · khanin.info · HB-0219
ADDSUB44IN10×OUT6×A0A1A2A3B0B1B2B3SUBCIS0S1S2S3COV5XOR3×19×XORI0B0I1SUBO0bx0XORI0B1I1SUBO0bx1XORI0B2I1SUBO0bx26XOR1×13×XORI0B3I1SUBO0bx37ADDER41×214×ADDER4A0A0A1A1A2A2A3A3B0bx0B1bx1B2bx2B3bx3CICIS0S0S1S1S2S2S3S3COCO© 2026 Daniil Khanin · khanin.info · HB-0220
ADDSUB4 …CANVAS8XOR2×1AND1×19×XORI0A3I1S3O0vaXORI0bx3I1S3O0vbANDI0vaI1vbO0V9Ctrl+GLibrary…Chip N2×Library…ADDSUB4EnterADDSUB4A0A1A2A3B0B1B2B3SUBCIS0S1S2S3COV1005×5×0A00A10A20A30B0© 2026 Daniil Khanin · khanin.info · HB-0221
CANVAS …1104×4×0B10B20B30SUB12ADDSUB41×16×ADDSUB4A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3SUBSUBCISUBS0S0S1S1S2S2S3S3COCVV13OR2×1NOR1×19×ORI0S0I1S1O0z01ORI0S2I1S3O0z23NORI0z01I1z23O0Z© 2026 Daniil Khanin · khanin.info · HB-0222
CANVAS …144×4×CZS3V154b0A3×4bDECA4bDECB4bBINSA0A30A21A11A0B0B31B20B11B01SUB1110SCZNVA0A31A20A11A0B0B31B20B11B01SUB0000SCZNVA0A31A21A11A0B0B30B20B11B00SUB1000SCZNV© 2026 Daniil Khanin · khanin.info · HB-0223
48 bits and comparisontwo ADDSUB4 in a chain, lamps = < >khHB-02A0A70A60A50A40A31A20A11A0B0B70B60B50B41B30B20B11B01SUBA=BA<BA>B5 − 9: A < BIN17×OUT10×ADDSUB42×3017×OR6×1NOR1×1NOT2×1AND4×17×4b0A3×∞Ctrl+GADDSUB8© 2026 Daniil Khanin · khanin.info · HB-0224
CANVAS1Delete0A00A10A20A30B00B10B20B30SUB2DeleteORI0S0I1S1O0z01ORI0S2I1S3O0z23NORI0z01I1z23O0ZCZS3V4bDECA4bDECB3Delete4bBINS© 2026 Daniil Khanin · khanin.info · HB-0225
CANVAS …4DeleteADDSUB4A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3SUBSUBCISUBS0S0S1S1S2S2S3S3COCVV© 2026 Daniil Khanin · khanin.info · HB-0226
ADDSUB85IN17×OUT10×A0A1A2A3A4A5A6A7B0B1B2B3B4B5B6B7SUBS0S1S2S3S4S5S6S7COV6ADDSUB41×315×ADDSUB4A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3SUBSUBCISUBS0S0S1S1S2S2S3S3COc4V7ADDSUB41×316×ADDSUB4A0A4A1A5A2A6A3A7B0B4B1B5B2B6B3B7SUBSUBCIc4S0S4S1S5S2S6S3S7COCOVV© 2026 Daniil Khanin · khanin.info · HB-0227
ADDSUB8 …CANVAS8Ctrl+GLibrary…Chip N2×Library…ADDSUB8EnterADDSUB8A0A1A2A3A4A5A6A7B0B1B2B3B4B5B6B7SUBS0S1S2S3S4S5S6S7COV905×5×0A00A10A20A30A41005×5×0A50A60A70B00B11105×5×0B20B30B40B50B61202×2×0B70SUB© 2026 Daniil Khanin · khanin.info · HB-0228
CANVAS …13ADDSUB81×27×ADDSUB8A0A0A1A1A2A2A3A3A4A4A5A5A6A6A7A7B0B0B1B1B2B2B3B3B4B4B5B5B6B6B7B7SUBSUBS0S0S1S1S2S2S3S3S4S4S5S5S6S6S7S7COCVV14OR3×19×ORI0S0I1S1O0z01ORI0S2I1S3O0z23ORI0S4I1S5O0z4515OR3×19×ORI0S6I1S7O0z67ORI0z01I1z23O0z03ORI0z45I1z67O0z47© 2026 Daniil Khanin · khanin.info · HB-0229
CANVAS …16NOR1×13×NORI0z03I1z47O0Z17NOT2×1AND1×17×NOTI0CO0nCNOTI0ZO0nZANDI0SUBI1ZO0EQ18AND3×19×ANDI0SUBI1nCO0LTANDI0CI1nZO0cnzANDI0SUBI1cnzO0GT© 2026 Daniil Khanin · khanin.info · HB-0230
CANVAS …195×5×CZS7VEQ202×2×LTGT214b0A3×8bDECA8bDECB8bDECSA0A70A60A50A40A31A21A11A0B0B70B60B50B40B31B21B11B01SUB0S=<>A0A70A60A50A40A31A20A11A0B0B70B60B50B41B30B20B11B01SUB252S=<>A1A71A60A50A41A30A20A10A0B1B70B60B51B40B31B21B10B01SUB50S=<>© 2026 Daniil Khanin · khanin.info · HB-0231
5The ± calculatorthe minus on a lamp, the magnitude on the displaykhHB-02A0A70A60A50A40A30A21A11A0B0B70B60B50B40B31B20B11B01SUB−2M3 − 5 = −2017×ADDSUB82×42×4b0A3×∞© 2026 Daniil Khanin · khanin.info · HB-0232
CANVAS1Delete0A00A10A20A30A40A50A60A70B02Delete0B10B20B30B40B50B60B70SUBORI0S0I1S1O0z01© 2026 Daniil Khanin · khanin.info · HB-0233
CANVAS …3DeleteORI0S2I1S3O0z23ORI0S4I1S5O0z45ORI0S6I1S7O0z67ORI0z01I1z23O0z03ORI0z45I1z67O0z47NORI0z03I1z47O0ZNOTI0CO0nCNOTI0ZO0nZANDI0SUBI1ZO0EQ4DeleteANDI0SUBI1nCO0LTANDI0CI1nZO0cnzANDI0SUBI1cnzO0GTCZS7VEQLT© 2026 Daniil Khanin · khanin.info · HB-0234
CANVAS …5DeleteGT8bDECA8bDECB8bDECS6DeleteADDSUB8A0A0A1A1A2A2A3A3A4A4A5A5A6A6A7A7B0B0B1B1B2B2B3B3B4B4B5B5B6B6B7B7SUBSUBS0S0S1S1S2S2S3S3S4S4S5S5S6S6S7S7COCVV© 2026 Daniil Khanin · khanin.info · HB-0235
CANVAS …705×5×0A00A10A20A30A4805×5×0A50A60A70B00B1905×5×0B20B30B40B50B6© 2026 Daniil Khanin · khanin.info · HB-0236
CANVAS …1002×2×0B70SUB11ADDSUB81×427×ADDSUB8A0A0A1A1A2A2A3A3A4A4A5A5A6A6A7A7B0B0B1B1B2B2B3B3B4B4B5B5B6B6B7B7SUBSUBS0S0S1S1S2S2S3S3S4S4S5S5S6S6S7S7COCVV12ADDSUB81×425×ADDSUB8A0GNDA1GNDA2GNDA3GNDA4GNDA5GNDA6GNDA7GNDB0S0B1S1B2S2B3S3B4S4B5S5B6S6B7S7SUBS7S0M0S1M1S2M2S3M3S4M4S5M5S6M6S7M7COV© 2026 Daniil Khanin · khanin.info · HB-0237
CANVAS …132×2×S7V144b0A3×8bDECA8bDECB8bDECMA0A70A60A50A40A30A21A11A0B0B70B60B50B40B31B20B11B01SUB2M−VA0A71A61A50A40A31A20A10A0B0B70B60B51B41B30B21B11B00SUB127M−VA0A70A60A50A41A30A21A10A0B0B71B61B50B40B31B20B10B01SUB90M−V© 2026 Daniil Khanin · khanin.info · HB-0238
6Bonus: decimal maththe +6 correction: 38 + 47 = 85khHB-02A0A70A61A51A41A30A20A10A0B0B71B60B50B40B31B21B11B03885D38 + 47 = 85IN9×OUT5×ADDER42×2OR2×1AND1×1016×1×4b0A3×∞Ctrl+GBCD1© 2026 Daniil Khanin · khanin.info · HB-0239
CANVAS1Delete0A00A10A20A30A40A50A60A70B02Delete0B10B20B30B40B50B60B70SUBS73DeleteV8bDECA8bDECB8bDECM© 2026 Daniil Khanin · khanin.info · HB-0240
CANVAS …4DeleteADDSUB8A0A0A1A1A2A2A3A3A4A4A5A5A6A6A7A7B0B0B1B1B2B2B3B3B4B4B5B5B6B6B7B7SUBSUBS0S0S1S1S2S2S3S3S4S4S5S5S6S6S7S7COCVV5DeleteADDSUB8A0GNDA1GNDA2GNDA3GNDA4GNDA5GNDA6GNDA7GNDB0S0B1S1B2S2B3S3B4S4B5S5B6S6B7S7SUBS7S0M0S1M1S2M2S3M3S4M4S5M5S6M6S7M7COV© 2026 Daniil Khanin · khanin.info · HB-0241
BCD16IN9×OUT5×A0A1A2A3B0B1B2B3CID0D1D2D3CO7ADDER41×214×ADDER4A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3CICIS0s0S1s1S2s2S3s3COc8OR2×1AND1×19×ORI0s1I1s2O0s12ANDI0s3I1s12O0bigORI0cI1bigO0CO9ADDER41×213×ADDER4A0s0A1s1A2s2A3s3B0GNDB1COB2COB3GNDCIGNDS0D0S1D1S2D2S3D3CO© 2026 Daniil Khanin · khanin.info · HB-0242
BCD1 …CANVAS10Ctrl+GLibrary…Chip N2×Library…BCD1EnterBCD1A0A1A2A3B0B1B2B3CID0D1D2D3CO1105×5×0A00A10A20A30A41205×5×0A50A60A70B00B1© 2026 Daniil Khanin · khanin.info · HB-0243
CANVAS …1305×5×0B20B30B40B50B61401×1×0B715BCD11×14×BCD1A0A0A1A1A2A2A3A3B0B0B1B1B2B2B3B3CIGNDD0D0D1D1D2D2D3D3COc10© 2026 Daniil Khanin · khanin.info · HB-0244
CANVAS …16BCD11×14×BCD1A0A4A1A5A2A6A3A7B0B4B1B5B2B6B3B7CIc10D0D4D1D5D2D6D3D7COH171×1×H184b0A3×8bHEXA8bHEXB8bHEXDA0A70A61A50A40A30A21A11A0B0B71B60B50B40B31B20B11B068D100A0A70A61A51A41A30A20A10A0B0B71B60B50B40B31B21B11B085D100A1A70A60A51A41A30A20A11A0B0B70B60B50B40B30B20B11B000D100© 2026 Daniil Khanin · khanin.info · HB-0245
Kit partshow many times you place each part over all the lessonsN11×P11×VCC1×GND1×069×16×4b0A15×IN61×OUT36×488ש 2026 Daniil Khanin · khanin.info · HB-0246
Kit chipsyou build them yourself: each one is made of the ones beforeOR12×1NAND1×1AND8×1XOR7×1HA3×1NOR2×1NOT2×1FA4×2ADDER44×2ADDSUB43×3ADDSUB83×4BCD12×6© 2026 Daniil Khanin · khanin.info · HB-0247
Done!A0A70A60A50A40A30A21A11A0B0B70B60B50B40B31B20B11B01SUB−2M3 − 5 = −2a ± calculator of 1,208 transistorsset A and B, click SUB — the display shows the magnitude, the "−" lamp the sign© 2026 Daniil Khanin · khanin.info · HB-0248
Copyright© 2026 Daniil Khanin, khanin.info. All rights reserved.These instructions, the drawings and circuits are original work.Reprinting, publishing online, selling or passing it on to others,in whole or in part, is prohibited without the written permission of the author.The latest version is at khanin.info.khkhanin.infoHB-02© 2026 Daniil Khanin · khanin.info · HB-0249