Compilers

Welke uitspraak over instructieselectie (instruction selection), een van de fasen van codegeneratie, is juist?

  1. AEr wordt bepaald met welke instructies van de doel-CPU de bewerkingen van de tussenrepresentatie worden gerealiseerd
  2. BEr wordt bepaald in welke volgorde het besturingssysteem uit te voeren processen kiest
  3. CUit de broncode worden instructies geselecteerd die als commentaar zijn geschreven
Antwoord en toelichting tonen

Antwoord: A. Er wordt bepaald met welke instructies van de doel-CPU de bewerkingen van de tussenrepresentatie worden gerealiseerd

Instructieselectie is de bewerking waarbij de reeks bewerkingen van de tussenrepresentatie wordt afgebeeld op concrete instructies van de doel-CPU. Ook voor dezelfde berekening verschillen de beschikbare instructies per CPU; a * b + c wordt bijvoorbeeld met één instructie gerealiseerd als de CPU een multiply-accumulate-instructie (FMA) heeft en anders met twee instructies, vermenigvuldigen en optellen. Hoe beter de instructies van de CPU worden benut, zoals het bundelen van de berekening van geheugenadressen in een adresseringsmodus, des te sneller de code. Het heeft niets te maken met scheduling door het besturingssysteem of verwerking van commentaar.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Compilers

  1. Welke uitspraak over een cross-compiler is juist?
  2. Als een met optimalisatie gecompileerd programma met een debugger wordt onderzocht, wordt de waarde van sommige variabelen soms als "niet beschikbaar" weergegeven. Wat is de belangrijkste reden?
  3. Welke uitspraak over de teruggegeven waarde en de resterende code van de bovenstaande functie is juist wanneer constant propagation, constant folding en verwijdering van dode code voldoende zijn toegepast?
  4. Welke uitspraak over de rol van lexicale analyse in een compiler is juist?
  5. Wat doet de parsing (syntactische analyse) van een compiler?

Vergelijkingen bij dit onderwerp