Jatkuva taitto

lausekkeita, joissa on vakio-operandeja, voidaan arvioida käännösaikaan, mikä parantaa suoritusajan suorituskykyä ja pienentää koodikokoa välttämällä arviointia käännösaikaan.

esimerkki:

alla olevassa koodikappaleessa lauseke (3 + 5) voidaan arvioida käännösaikaan ja korvata vakiolla 8.

int f (void){ return 3 + 5;} 

alla on koodin katkelma jatkuvan taittelun jälkeen.

int f (void){ return 8;} 

Huom:

jatkuva taitto on suhteellisen helppo optimointi.

ohjelmoijat eivät yleensä kirjoita lausekkeita kuten (3 + 5) suoraan, mutta nämä lausekkeet ovat suhteellisen yleisiä makrolaajennuksen ja muiden optimointien kuten jatkuvan lisäyksen jälkeen.

kaikki C-kääntäjät voivat taittaa kokonaislukuvakion lausekkeita, jotka ovat läsnä makrolaajennuksen jälkeen (ANSI C-vaatimus). Useimmat C kääntäjät voi taittaa kokonaisluku vakio lausekkeita, jotka otetaan käyttöön jälkeen muut optimoinnit.

jotkin ympäristöt tukevat useita liukulukujen pyöristystiloja, joita voidaan muuttaa dynaamisesti ajon aikana. Näissä ympäristöissä lausekkeet, kuten (1.0 / 3.0), on arvioitava ajon aikana, jos pyöristystapaa ei tunneta käännösaikana.

Vastaa

Sähköpostiosoitettasi ei julkaista.