3.5.3. A regiszter átnevezés

A regiszter átnevezés célja az ál-adatfüggőségek megszüntetése. Ál-adatfüggőségek jöhetnek létre például abból a helyzetből, hogy a programozónak rendelkezésére álló regiszterkészlet jóval kisebb annál, mint ahány regiszter a processzorba fizikailag beépítésre kerül.

Például az IBM kompatíbilis PC-k Assembly nyelvében 4 általános regiszter = EAX, EBX, ECX, EDX használható, ezzel szemben a Pentium II processzor 40 felhasználható általános regisztert tartalmaz. Emiatt a programozó (fordítóprogram) esetenként – a címezhető regiszterek hiánya miatt – például a verembe történő mentésre kényszerül, amire a fizikailag rendelkezésre álló regiszterek száma miatt nem lenne szükség.

A következő példa utasításai – mivel az EAX regisztert használják – függnek egymástól (bal oldali utasítássorozat). Ha megfelelő számú regiszter (R1, R2) van a processzorban, akkor ezt kiküszöbölhetjük (jobb oldali oszlop):

MOV       EAX, 100

ADD       [mem1], EAX

MOV       EAX, 200

ADD       [mem2], EAX

MOV       R1, 100

ADD       [mem1], R1

MOV       R2, 200

ADD       [mem2], R2

 

 

 

folytatás

tartalomjegyzék almenü fogalomszótár jelölésrendszer ellenõrzõ kérdések fejezet eleje elõzõ lap következõ lap következõ fejezet