ABCD for Kids
Teaching kids about programming, one letter at a time
Click on the names on the first row to see a story about it. Select a voice to enable speech. Click on letters, words, or stories to listen. Click again to pause.
A
Assembly
Address ·
ALU ·
Allocator
Assembly is the language closest to what the computer actually understands! It tells the CPU exactly what to do, like "add these numbers" or "move this data." It's like speaking directly to the computer's brain!
Assembly is the language closest to what the computer actually understands! It tells the CPU exactly what to do, like "add these numbers" or "move this data." It's like speaking directly to the computer's brain!
An Address is like a house number for memory! Every byte in computer memory has its own address so the CPU knows exactly where to find data. Like a mailbox number for information!
The ALU (Arithmetic Logic Unit) does all the math inside the CPU! It can add, subtract, multiply, and compare numbers. It's the calculator inside every computer processor!
An Allocator manages memory for programs! When a program needs space to store data, the allocator finds a free spot and gives it out. Like a librarian assigning shelf space for books!
B
Binary
Bit ·
Byte ·
Bus
Binary is how computers count - they only know 0 and 1! Everything - numbers, letters, pictures - is stored as patterns of zeros and ones. 0 means off, 1 means on, like billions of tiny light switches!
Binary is how computers count - they only know 0 and 1! Everything - numbers, letters, pictures - is stored as patterns of zeros and ones. 0 means off, 1 means on, like billions of tiny light switches!
A Bit is the smallest piece of information - just a 0 or 1! Eight bits make a byte. Everything in computers is built from these tiny bits!
A Byte is 8 bits grouped together! It can store a number from 0 to 255, or one letter. Computer memory is measured in bytes - gigabytes means billions of bytes!
A Bus is like a highway inside the computer! It carries data between the CPU, memory, and other parts. The wider the bus, the more data can travel at once!
C
C
CPU ·
Cache ·
Clock
C was created in 1972 to build Unix! It's the foundation of almost everything - Linux, operating systems, and most other languages are written in C. Learning C is like learning how computers really work!
C was created in 1972 to build Unix! It's the foundation of almost everything - Linux, operating systems, and most other languages are written in C. Learning C is like learning how computers really work!
The CPU (Central Processing Unit) is the computer's brain! It does all the thinking and calculating, billions of times every second. It reads instructions and tells other parts what to do.
Cache is super-fast memory inside the CPU! It stores frequently used data so the CPU doesn't have to wait for slower main memory. Like keeping your favorite book on your desk instead of the shelf!
The Clock keeps the CPU in sync! Every tick of the clock, the CPU does one step. A 3 GHz CPU ticks 3 billion times per second - that's how it works so fast!
D
DMA
Disk ·
Driver ·
DRAM
DMA (Direct Memory Access) lets devices move data without bothering the CPU! Like having a helper who moves boxes while you focus on important thinking. This makes computers much faster!
DMA (Direct Memory Access) lets devices move data without bothering the CPU! Like having a helper who moves boxes while you focus on important thinking. This makes computers much faster!
A Disk stores data permanently! Even when the power is off, disks remember everything. Hard drives and SSDs are types of disks that hold your files, photos, and programs!
A Driver teaches the operating system how to talk to hardware! Each device needs a driver - like a translator. The driver knows how to send commands to the printer, keyboard, or graphics card!
DRAM (Dynamic RAM) is the main memory in computers! It's fast but needs constant refreshing to remember data. When you open a program, it loads into DRAM for quick access!
E
ELF
Endianness ·
Executable ·
Exception
ELF (Executable and Linkable Format) is how Linux programs are stored! It's like a special container that holds all the instructions and data a program needs. When you run a program, the computer reads the ELF file!
ELF (Executable and Linkable Format) is how Linux programs are stored! It's like a special container that holds all the instructions and data a program needs. When you run a program, the computer reads the ELF file!
Endianness is the order bytes are stored in memory! Big-endian stores the biggest part first, little-endian stores the smallest first. It's like writing dates as MM/DD/YY vs DD/MM/YY!
An Executable is a file the computer can run! It contains instructions in machine code that the CPU understands. When you double-click a program, you're running its executable!
An Exception is when something goes wrong in a program! Like dividing by zero or accessing memory you don't own. The CPU stops and lets the operating system handle the problem!
F
Firmware
FIFO ·
Flag ·
FPU
Firmware is special software built into hardware! It lives in a chip and tells the hardware how to work. Your keyboard, mouse, and disk all have firmware that stays even when powered off!
Firmware is special software built into hardware! It lives in a chip and tells the hardware how to work. Your keyboard, mouse, and disk all have firmware that stays even when powered off!
FIFO means First In, First Out! Like a line at a store - whoever arrives first gets served first. Queues use FIFO to keep things fair and organized!
A Flag is a tiny piece of memory that remembers true/false! The CPU uses flags to remember results - was the answer zero? Did it overflow? Flags help make decisions!
The FPU (Floating Point Unit) does decimal math! While the ALU handles whole numbers, the FPU can calculate 3.14159 or scientific numbers. Essential for graphics and science!
G
Go
GPU ·
Gate ·
GHz
Go was created at Google in 2007 to make programming simple and fast! It has a cute gopher mascot and is perfect for building servers and cloud applications. Docker and Kubernetes are written in Go!
Go was created at Google in 2007 to make programming simple and fast! It has a cute gopher mascot and is perfect for building servers and cloud applications. Docker and Kubernetes are written in Go!
A GPU (Graphics Processing Unit) is a special chip for drawing pictures fast! It has thousands of tiny workers that all work together. Games need GPUs to render beautiful 3D graphics!
A Gate is a tiny electronic switch that does logic! AND, OR, NOT gates combine to build all computer circuits. Millions of gates working together create the CPU!
GHz (Gigahertz) measures CPU speed! One GHz means one billion cycles per second. A 3 GHz CPU can do 3 billion operations every second - incredibly fast!
H
Heap
Hardware ·
Hypervisor ·
Hz
The Heap is a part of memory where programs store data that can grow and shrink! Like a toy box where you can add or remove toys whenever you want, but you need to remember where you put them.
The Heap is a part of memory where programs store data that can grow and shrink! Like a toy box where you can add or remove toys whenever you want, but you need to remember where you put them.
Hardware is the physical parts of a computer you can touch! The CPU, memory, disk, keyboard, and monitor are all hardware. Software tells the hardware what to do!
A Hypervisor lets you run multiple operating systems on one computer! It creates virtual machines - like having several computers inside one physical machine. Used in cloud computing!
Hz (Hertz) measures frequency - cycles per second! CPUs run at billions of hertz (GHz). The faster the hertz, the more instructions the CPU can execute!
I
Interrupt
Instruction ·
I/O ·
IPC
An Interrupt is like someone tapping your shoulder! When something important happens (like pressing a key), hardware sends an interrupt to the CPU saying "stop what you're doing and look at this!"
An Interrupt is like someone tapping your shoulder! When something important happens (like pressing a key), hardware sends an interrupt to the CPU saying "stop what you're doing and look at this!"
An Instruction is one command for the CPU! Like "add these numbers" or "move this data." Programs are made of millions of instructions executed in sequence!
I/O (Input/Output) is how computers talk to the world! Input is data coming in (keyboard, mouse). Output is data going out (screen, printer). All communication is I/O!
IPC (Inter-Process Communication) lets programs talk to each other! Like passing notes between friends. Programs can share data and work together using IPC!
J
Jump
JIT ·
JTAG ·
Jitter
Jump makes the CPU skip to a different instruction! Instead of going step-by-step, the CPU jumps to another location. This is how programs make decisions and loop!
Jump makes the CPU skip to a different instruction! Instead of going step-by-step, the CPU jumps to another location. This is how programs make decisions and loop!
JIT (Just-In-Time) compilation translates code right when it's needed! Instead of translating everything at once, JIT waits and compiles on the fly. Faster startup, still runs fast!
JTAG is a way to debug hardware! Engineers use JTAG to test and program chips during manufacturing. It's like having a special access port into the CPU!
Jitter is unwanted variation in timing! Like a clock that sometimes ticks fast, sometimes slow. Computers try to minimize jitter for smooth, predictable performance!
K
Kernel
Kilobyte ·
KVM ·
Key
The Kernel is the heart of the operating system! It controls everything - memory, files, and how programs run. It's like the boss of the computer, making sure everyone follows the rules and shares resources fairly.
The Kernel is the heart of the operating system! It controls everything - memory, files, and how programs run. It's like the boss of the computer, making sure everyone follows the rules and shares resources fairly.
A Kilobyte is 1,024 bytes! Computer memory is measured in KB, MB, GB. One KB can store a few sentences of text. Your phone has millions of kilobytes!
KVM (Keyboard-Video-Mouse) lets you control multiple computers with one set of peripherals! Also, in Linux, KVM lets you run virtual machines. One acronym, two meanings!
A Key in computing can mean many things! Encryption keys protect data, database keys identify records, keyboard keys input data. Keys unlock access or identify things!
L
Linker
Loader ·
Latency ·
Lock
The Linker connects pieces of code together to make a complete program! Like puzzle pieces - you write different parts separately, then the linker puts them all together so they work as one.
The Linker connects pieces of code together to make a complete program! Like puzzle pieces - you write different parts separately, then the linker puts them all together so they work as one.
The Loader takes a program from disk and puts it into memory to run! It sets up the program's space, loads all the code and data, then starts execution!
Latency is the delay before data starts moving! Like the pause before a car accelerates. Lower latency means faster response - important for games and networking!
A Lock prevents multiple programs from using the same resource at once! Like a bathroom lock - only one person at a time. Prevents chaos when programs share data!
M
Memory
MMU ·
Mutex ·
MHz
Memory is where the computer stores information it's using right now! RAM (Random Access Memory) is super fast but forgets everything when you turn off the power - like a whiteboard that gets erased.
Memory is where the computer stores information it's using right now! RAM (Random Access Memory) is super fast but forgets everything when you turn off the power - like a whiteboard that gets erased.
The MMU (Memory Management Unit) translates virtual addresses to physical ones! It gives each program its own private memory space. Keeps programs from interfering with each other!
A Mutex (Mutual Exclusion) is a lock for programs! Only one thread can hold the mutex at a time. Prevents two threads from modifying the same data simultaneously!
MHz (Megahertz) means millions of cycles per second! Old computers ran at MHz (like 100 MHz). Modern CPUs run at GHz (thousands of MHz) - much faster!
N
Network
NOP ·
NAND ·
Node
A Network connects computers together, like roads connect houses! When computers talk to each other over the internet, they're using a network - sending messages back and forth.
A Network connects computers together, like roads connect houses! When computers talk to each other over the internet, they're using a network - sending messages back and forth.
NOP (No Operation) is an instruction that does nothing! Sometimes the computer needs to wait or skip a spot, so it does a NOP - like taking a breath between words when you talk.
NAND is a logic gate that means "not both"! Flash drives and SSDs use NAND memory chips. NAND gates are so useful that you can build entire computers using only them!
A Node is a point in a network or data structure! In networking, each computer is a node. In linked lists, each item is a node. Nodes connect together to form larger structures!
O
Opcode
OS ·
Overflow ·
Offset
An Opcode (Operation Code) tells the CPU what action to do! Each instruction has an opcode - like ADD, MOVE, or JUMP. It's the computer's vocabulary of commands!
An Opcode (Operation Code) tells the CPU what action to do! Each instruction has an opcode - like ADD, MOVE, or JUMP. It's the computer's vocabulary of commands!
The OS (Operating System) manages the computer! It controls files, memory, and programs. Linux, Unix, and macOS are operating systems. The OS is like the manager that keeps everything running!
Overflow happens when a number gets too big to store! Like putting 999 in a box that only holds up to 255. The extra bits spill over - overflow! This can cause bugs!
An Offset is a distance from a starting point! Like "3 steps from the door." In memory, offsets tell you how far from the base address to find data!
P
Pointer
Process ·
Pipeline ·
Port
A Pointer is like a treasure map to data in memory! Instead of carrying around a big toy, you keep a note saying "the toy is in box #42." Pointers tell you where to find data.
A Pointer is like a treasure map to data in memory! Instead of carrying around a big toy, you keep a note saying "the toy is in box #42." Pointers tell you where to find data.
A Process is a running program! When you start an app, the OS creates a process for it. Each process has its own memory and CPU time. Multiple processes run together!
A Pipeline breaks work into stages! Like an assembly line - while one instruction executes, the next one decodes, and the next fetches. CPUs use pipelines to work faster!
A Port is a numbered endpoint for network connections! Web servers use port 80, email uses port 25. Ports let one computer run many network services at once!
Q
Queue
Quantum ·
Query ·
Qubit
A Queue is a waiting line for tasks! First in, first out - like waiting at an ice cream truck. The computer uses queues to keep track of jobs that need to be done.
A Queue is a waiting line for tasks! First in, first out - like waiting at an ice cream truck. The computer uses queues to keep track of jobs that need to be done.
A Quantum is the smallest unit of something! In quantum computing, qubits can be 0 and 1 at the same time (superposition). Quantum computers might revolutionize computing!
A Query is a request for information! Like asking a database "show me all users named John." Queries search through data to find what you need!
A Qubit is a quantum bit! Unlike regular bits (0 or 1), qubits can be both at once. Quantum computers use qubits to solve certain problems incredibly fast!
R
Rust
Register ·
RAM ·
ROM
Rust is Mozilla's language for safe systems programming! It prevents crashes and security bugs at compile time. Fast like C but safe like higher-level languages. Rust is used in Firefox, Discord, and even parts of Linux!
Rust is Mozilla's language for safe systems programming! It prevents crashes and security bugs at compile time. Fast like C but safe like higher-level languages. Rust is used in Firefox, Discord, and even parts of Linux!
A Register is super-fast memory inside the CPU! There are only a few registers, but they're the fastest storage in the computer - like keeping important numbers in your head.
RAM (Random Access Memory) is the computer's working memory! It's fast but volatile - loses everything when powered off. The more RAM, the more programs you can run at once!
ROM (Read-Only Memory) stores data permanently! It can't be changed easily. BIOS firmware lives in ROM. Unlike RAM, ROM keeps data even when powered off!
S
Stack
Syscall ·
Shell ·
Segment
The Stack is memory organized like a stack of plates! You can only add or remove from the top. Programs use the stack to remember where they were when calling functions - like breadcrumbs!
The Stack is memory organized like a stack of plates! You can only add or remove from the top. Programs use the stack to remember where they were when calling functions - like breadcrumbs!
A Syscall (System Call) is how programs ask the kernel for help! Need to read a file? Make a syscall! Want to create a network connection? Syscall! The kernel does the work.
A Shell is a program that lets you talk to the operating system! You type commands and the shell executes them. Bash and Zsh are popular shells on Unix systems!
A Segment is a chunk of memory with a specific purpose! Code segment holds instructions, data segment holds variables. Segmentation helps organize program memory!
T
Thread
TLB ·
Transistor ·
Trap
A Thread is a path of execution in a program! Multiple threads can run at once, like having several trains on different tracks all moving forward. This lets computers do many things simultaneously!
A Thread is a path of execution in a program! Multiple threads can run at once, like having several trains on different tracks all moving forward. This lets computers do many things simultaneously!
The TLB (Translation Lookaside Buffer) caches virtual-to-physical address translations! It makes memory access faster by remembering recent lookups. Like bookmarking pages you visit often!
A Transistor is a tiny electronic switch! CPUs have billions of transistors working together. Each transistor can be on or off - representing 1 or 0. They're the building blocks of computers!
A Trap is an intentional interrupt for the OS! Programs use traps to request services. Like raising your hand in class - you trap to get the kernel's attention!
U
Unix
USB ·
User Mode ·
UART
Unix was born in 1969 at Bell Labs and changed computing forever! It introduced ideas like files, pipes, and simple tools that work together. Its children (Linux, macOS) run most computers today!
Unix was born in 1969 at Bell Labs and changed computing forever! It introduced ideas like files, pipes, and simple tools that work together. Its children (Linux, macOS) run most computers today!
USB (Universal Serial Bus) connects devices to computers! Keyboards, mice, storage drives all use USB. It provides power and data through one cable. USB made connecting devices easy!
User Mode is a safe playground for programs! When your program runs in user mode, it can't break the computer or mess with other programs. The kernel watches over it like a parent!
UART (Universal Asynchronous Receiver/Transmitter) sends data one bit at a time! Old serial ports used UART. Still used in embedded systems and debugging!
V
Virtual Memory
VRAM ·
Vector ·
Virtual Machine
Virtual Memory is a clever trick! Each program thinks it has all the computer's memory to itself. The OS creates this illusion, managing real memory behind the scenes - like magic!
Virtual Memory is a clever trick! Each program thinks it has all the computer's memory to itself. The OS creates this illusion, managing real memory behind the scenes - like magic!
VRAM (Video RAM) is special memory for graphics! The GPU uses VRAM to store textures, frames, and graphics data. More VRAM means better graphics and higher resolutions!
A Vector in computing can mean two things! SIMD vectors process multiple data at once. Interrupt vectors point to handler code. Both make computers more efficient!
A Virtual Machine is a computer inside a computer! Software pretends to be hardware. You can run Linux inside Windows, or test different OS without separate physical machines!
W
Word
Write-back ·
Watchdog ·
WebAssembly
A Word is the natural size of data a CPU handles at once! On a 64-bit computer, a word is 64 bits (8 bytes). It's like the CPU's "handful size" for moving data around.
A Word is the natural size of data a CPU handles at once! On a 64-bit computer, a word is 64 bits (8 bytes). It's like the CPU's "handful size" for moving data around.
Write-back is a cache strategy! Modified data stays in cache and writes to memory later. Faster than writing immediately, but needs careful management to keep data consistent!
A Watchdog timer resets the system if something goes wrong! Like a safety net - if the program freezes, the watchdog restarts it. Keeps embedded systems running reliably!
WebAssembly lets any language run in web browsers! Write code in C, Rust, or Go, and it runs at near-native speed in browsers. The future of high-performance web apps!
X
x86
XOR ·
x64 ·
XCHG
x86 is a family of CPU designs used in most computers! Intel created it decades ago, and it became so popular that almost all laptops and desktops use x86 processors. Your computer probably has one!
x86 is a family of CPU designs used in most computers! Intel created it decades ago, and it became so popular that almost all laptops and desktops use x86 processors. Your computer probably has one!
XOR (Exclusive OR) is a logic operation! Output is true only when inputs differ. XOR is used in encryption, error checking, and bit manipulation. Super useful in low-level programming!
x64 (also called x86-64) is the 64-bit version of x86! It can handle much more memory and larger numbers than 32-bit x86. Most modern computers use x64 architecture!
XCHG is an assembly instruction that swaps two values! Like trading toys with a friend. XCHG exchanges the contents of two registers or memory locations atomically!
Y
Yield
Y2K ·
Yocto ·
YAML
Yield means giving up your turn! When a thread yields, it tells the CPU "you can run something else now, I'll wait." It's like letting someone else have a turn on the swing.
Yield means giving up your turn! When a thread yields, it tells the CPU "you can run something else now, I'll wait." It's like letting someone else have a turn on the swing.
Y2K was the year 2000 bug! Old programs stored years as 2 digits (99 for 1999). What happens at 2000? Would it think it's 1900? Engineers fixed billions of lines of code!
Yocto means 10^-24 - incredibly tiny! In computing, the Yocto Project builds custom Linux systems for embedded devices. It lets you create your own tailored operating system!
YAML is a simple data language used for configuration! Docker, Kubernetes, and many tools use YAML because it's easy for humans to read and write. No weird brackets needed!
Z
Zero Flag
Zombie ·
ZFS ·
Zone
The Zero Flag is a special bit in the CPU that turns on when a result equals zero! It helps the CPU make decisions - "if the answer is zero, do this, otherwise do that." Like a tiny yes/no light!
The Zero Flag is a special bit in the CPU that turns on when a result equals zero! It helps the CPU make decisions - "if the answer is zero, do this, otherwise do that." Like a tiny yes/no light!
A Zombie process is dead but not gone! When a program finishes but its parent hasn't read the exit status, it becomes a zombie. It takes up space in the process table!
ZFS is a powerful filesystem! It combines filesystem and volume manager. ZFS protects against data corruption, supports snapshots, and can handle massive amounts of storage!
Memory Zones are regions of RAM with different properties! The kernel divides memory into zones - some for DMA, some for normal use, some for high memory. Helps manage different memory types!