Algorytmy przydziału rejestrów Problem przydziału rejestrów można sprowadzić do problemu kolorowania grafu, w którym wierzchołkami są zmienne. Są one połączone krawędzią jeśli w danej chwili t są jednocześnie w użyciu. Kolorami są natomiast numery rejestrów. Jeśli teraz pokolorować taki graf to można z niego odczytać do jakiego rejestrów dana zmienna powinna być przypisana. Ponieważ liczba rejestrów jest stała problem tak naprawdę można sprowadzić do problemu K-kolorowoania grafu.

Rozlewanie rejestrów (spilling) Przerzucanie zmiennych do stosu z powodu przewagi liczby zmiennych do liczby rejestrów. Pojawia się on w programach napisanych w języku wysokiego poziomu.

Kompilatory przetwarzają kod źródłowy na kod maszynowy zrozumiały dla procesora. Współczesne kompilatory wykonują optymalizację kodu wynikowego, a głównym kryterium optymalizacji jest szybkość działania skompilowanego programu. Procesory szybciej wykonują operacje na wewnętrznych rejestrach procesora niż na zewnętrznej (dla CPU) pamięci. Dlatego istotne jest, aby zmienne używane w programie były przechowywane w rejestrach. Procesory dają do dyspozycji oprogramowania określoną liczbę rejestrów, a w wielu procesorach (w technologii CISC) jest jeden wyróżniony rejestr, w którym umieszcza się wyniki działań;