How Code Becomes Execution (compilers, stack & heap)

The road from the words you type to the bytes the chip runs, and the two work areas a running program keeps while it’s on that road: one that grows and shrinks with every function call, one that holds anything that has to outlive the call that made it.
Before you start. The CPU (fetch-decode-execute, the ISA, assembly) left you with a chip that does exactly one thing, forever: fetch an instruction, decode it, run it - it has no idea what a word, a loop or a function is. The Memory Hierarchy (cache, locality, the memory wall) left you with the other half: while that chip runs, everything the program is working on sits in memory, in copies at different speeds.