How CPU Emulation Works: Interpretation vs. Dynamic Recompilation
Every emulator has to answer the same question: how do you run code written for one processor on a completely different one? Two fundamentally different answers, and why most serious emulators eventually need both.