www.wikidata.de-de.nina.az
Der Kontrollfluss oder Programmablauf bezeichnet in der Informatik die zeitliche Abfolge der einzelnen Befehle eines Computerprogramms Der Kontrollfluss eines Programms ist gewohnlich durch die Reihenfolge der Befehle innerhalb des Programms vorgegeben jedoch erlauben Kontrollstrukturen von der sequenziellen Abarbeitung des Programms abzuweichen Die Abarbeitungsreihenfolge der einzelnen Befehle welche das Programm vorgibt wird von Kontrollflussabhangigkeiten festgelegt Ein einzelner Befehl wird entweder dann ausgefuhrt wenn der unmittelbar vorhergehende Befehl abgearbeitet und der Programmzahler inkrementiert wurde oder wenn ein Sprungbefehl auf die entsprechende Stelle im Speicher zeigt und dem Programmzahler durch den Sprungbefehl ein neuer Wert zugewiesen wird Beide Kontrollflussabhangigkeiten mussen bei der parallelen Ausfuhrung von Befehlen des Programms berucksichtigt werden Inhaltsverzeichnis 1 Grundlagen 1 1 Beispiel 2 Anwendung 3 Siehe auch 4 LiteraturGrundlagen BearbeitenDer geplante Ablauf eines Programmes wird durch einen sogenannten Programmablaufplan oder auch den Kontrollflussgraphen dargestellt Darin sind alle moglichen Verzweigungen innerhalb des Kontrollflusses verzeichnet Der tatsachliche Kontrollfluss ist nun die Befehlsfolge wahrend einer Ausfuhrung des Programms Beispiel Bearbeiten Betrachtet wird der folgende Ausschnitt aus einem in C implementierten Programm int i 0 hier kann i irgendwo geandert werden if i 5 puts i 5 else puts i 5 Der Kontrollflussgraph sieht nun wie folgt aus i 0 Ja i 5 Nein i 5 n i 5 nDer tatsachliche Kontrollfluss des Programms hangt nun vom konkreten Wert der Variable i zum Zeitpunkt des Erreichens der if Anweisung ab Befindet sich die if Anweisung innerhalb einer Schleife so konnte beim erneuten Schleifendurchlauf der alternative Zweig des Kontrollflussgraphen durchlaufen werden Anwendung BearbeitenDie Analyse des Kontrollflusses ist ein Teil der Programmanalyse Die Anwendung des Programms auf einen Testfall fuhrt zu einem bestimmten Kontrollfluss und kann mit dem erwarteten Kontrollfluss verglichen werden Dadurch lassen sich potentielle Fehler durch falsche Kontrollstrukturen aufspuren Ebenso kann eine teilweise Bewertung des Testfalles vorgenommen werden Im optimalen Fall sofern Schleifen vorhanden sind sind alle im Kontrollflussgraph enthaltenen Befehle auch im durch den Testfall erzeugten Kontrollfluss enthalten Siehe auch BearbeitenKontrollfluss UML Abhangigkeitsanalyse ContinuationLiteratur BearbeitenO J Dahl E W Dijkstra amp C A R Hoare Structured Programming Academic Press London 1972 ISBN 0 12 200550 3 Abgerufen von https de wikipedia org w index php title Kontrollfluss amp oldid 210777251