Introduction
When a program runs, it needs to store temporary values quickly. The computer has a limited number of fast storage spots called registers. The challenge is to assign many temporary values to these few registers without conflicts, so the program runs efficiently.