Compiler
Welche Aussage zum Basisblock ist richtig?
- ABefehlsfolge ohne Verzweigungen hinein oder heraus, die stets zusammenhängend ausgeführt wird
- BZusammenfassung aller Befehle einer Funktion zu einer Einheit
- CMehrfach hintereinander geschriebener Schleifenrumpf, wodurch die Zahl der Iterationen sinkt
Antwort und Erläuterung anzeigen
Antwort: A. Befehlsfolge ohne Verzweigungen hinein oder heraus, die stets zusammenhängend ausgeführt wird
Ein Basisblock ist eine Befehlsfolge, die nur am Anfang betreten und nur am Ende verlassen wird; hat die Ausführung einmal begonnen, wird sie weder in der Mitte verlassen noch in der Mitte betreten. Basisblöcke werden an Befehlen, die Sprungziele sind, und direkt nach Verzweigungsbefehlen getrennt. Da die Ausführungsreihenfolge im Block feststeht, sind lokale Optimierungen einfach, und der Gesamtablauf wird als Kontrollflussgraph mit Basisblöcken als Knoten dargestellt. Eine ganze Funktion besteht gewöhnlich aus mehreren Basisblöcken; das Aneinanderreihen von Schleifenrümpfen ist Loop Unrolling.