Bits & Binary
Count in base 2, convert numbers, and understand why computers only speak in zeros and ones.
NomaJS is a learning space for grades 3 to 12. Kids start with a single switch, then build up to the instructions a processor runs, one fun, step-by-step lesson at a time.
; add two numbers together start: MOV AL, 5 ; AL = 5 MOV BL, 3 ; BL = 3 ADD AL, BL ; AL = 8 HLT ; stop the CPU // result in register AL: // 0000 1000 (decimal 8)
Every big idea in computing is made from smaller ones. We follow that order, so nothing is magic.
Count with only two digits. Learn how a single switch can hold a letter, a color, or a number.
Build AND, OR and NOT from wires and switches, then combine them into a circuit that adds numbers.
Write assembly, move data through registers and memory, and watch the processor carry out each step.
Each course is short, has a lab you run on a simulated CPU, and ends with a challenge you can share.
Count in base 2, convert numbers, and understand why computers only speak in zeros and ones.
AND, OR, NOT, XOR. Wire switches and lights together to make a circuit that makes a decision.
Every byte has a number, an address. Learn how to read and write memory like a row of mailboxes.
Meet the tiny, fast storage inside the processor. Follow the fetch, decode, execute cycle by hand.
Write your first real program. Move values, do math, jump between lines and make loops.
How a program remembers where it was before a function call, and how it finds its way back.
Talk to keyboards, timers and screens. Learn how hardware calls the CPU when something happens.
Put everything together. Design a small processor on paper, then run a program on it.
Read raw hex dumps, patch a running program, and find a bug the way real engineers do.
Click the switches below. Each one is worth a power of two. Your total is the value of the byte.
Lessons match what students are learning in class, with reading levels and activities for each stage.
Pictures, puzzles and unplugged activities. Count with bits, play with logic switches, and build your first byte.
Guided labs with hints. Make circuits, store data in memory, and write short programs in simple assembly.
Open challenges. Design a CPU, debug machine code, and share a capstone project with your class.
Create a class, invite students with a code, and assign lessons. Check progress on one screen and see who needs help before the bell rings.
“My students used to think computers were magic. Now they can explain binary to each other. It has changed how my class talks about technology.”
— Middle school computer science teacher“The class codes made setup easy. I spent my time teaching, not managing accounts.”
— High school technology coordinator“My daughter asked me how the processor knows what to do next. I did not have an answer. She now does, and she's proud of it.”
— Parent of a 9-year-oldFree for students and families. Schools get class dashboards and bulk setup. Your first lesson takes about ten minutes.