Verzögerungsschleife

Verzögerungsschleife
QS-Informatik

Dieser Artikel wurde aufgrund von inhaltlichen Mängeln auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen und beteilige dich an der Diskussion! (+)

Eine Verzögerungsschleife ist ein Teil eines Computerprogramms, der dazu dient ist, die Abarbeitung folgender Instruktionen zeitlich zu verzögern.

In den meisten Fällen sind Verzögerungsschleifen als verschachtelte Schleife ausgeführt, da so ein kurzer Programmcode einen großen Verzögerungseffekt bewirken kann. Verzögerungsschleifen werden oft als Unterprogramm geladen, das mit dem Argument des Funktionsaufrufs variabel wird. Wird in einem großen Programm häufiger eine Verzögerungsschleife benötigt, verkleinert diese Programmiertechnik die Länge des kompilierten Programms.

Grundlage einer Verzögerungsschleife ist die Tatsache, dass Prozessoren die Instruktionen nach einer festen Reihenfolge abarbeiten. Zu beachten ist, dass Prozessoren unterschiedliche Instruktionen oft verschieden schnell bearbeiten können. So ist eine Addition meist etwa doppelt so schnell wie eine Multiplikation ausgeführt. CPU-Hersteller stellen diese Informationen in ihren Befehlsreferenzen zur Verfügung. Das Einführen von Pipelines und anderen Optimierungen neuer Prozessoren, sowie die Unkenntnis des Programmierers, welche Daten in einem möglichen Cache liegen, machen das Programmieren von exakten Verzögerungschleifen anspruchsvoller.

Standardmäßig verwendet man in Verzögerungsschleifen den NOP-Befehl der immer genau einen Taktzyklus benötigt und keine Änderungen vornimmt. Da Verzögerungschleifen auf Grund ihrer starken Bindung zur Hardware als unelegante Lösungen gelten, werden sie auf allen Systemen, die Hardwaretimer zur Verfügung stellen gemieden oder durch Funktionen des Betriebssystems ersetzt.

Prinzipiell ermöglicht jede Programmiersprache die Erstellung von Verzögerungsschleifen, ist aber historisch stark an Assemblercode gebunden.

Beispielcode einer 1-stufigen Verzögerungsschleife in Pseudocode:

  1. Lade Variable A mit Wert 10
  2. Führe NOP aus
  3. Reduziere Variable A um 1
  4. Wenn A nicht null ist springe zu "2."

siehe auch: Softwarebremse


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Verzögerungsschleife — Verzögerungsschleife,   eine Schleife, in der entweder keine Befehle ausgeführt werden oder nur eine nicht weiter benötigte Zählvariable hochgezählt wird; dies hat lediglich den Zweck, die Programmausführung zu verlangsamen. Dies kann z. B. zur… …   Universal-Lexikon

  • ATARI BASIC — (selten auch Shepardson BASIC genannt) ist ein ROM residenter BASIC Interpreter für Atari 8 Bit Heimcomputer. Die erste Version wurde mit den Systemen der Atari 400/800 als 8 KB Einsteck Cartridge mitgeliefert, in den Rechnern der Atari XL/XE… …   Deutsch Wikipedia

  • Atari-BASIC — (selten auch Shepardson BASIC genannt) ist ein ROM residenter BASIC Interpreter für Atari 8 Bit Heimcomputer. Die erste Version wurde mit den Systemen der Atari 400/800 als 8 KB Einsteck Cartridge mitgeliefert, in den Rechnern der Atari XL/XE… …   Deutsch Wikipedia

  • Atari BASIC — (selten auch Shepardson BASIC genannt) ist ein ROM residenter BASIC Interpreter für Atari 8 Bit Heimcomputer. Die erste Version wurde mit den Systemen der Atari 400/800 als 8 KB Einsteck Cartridge mitgeliefert, in den Rechnern der Atari… …   Deutsch Wikipedia

  • Atari Basic — (selten auch Shepardson BASIC genannt) ist ein ROM residenter BASIC Interpreter für Atari 8 Bit Heimcomputer. Die erste Version wurde mit den Systemen der Atari 400/800 als 8 KB Einsteck Cartridge mitgeliefert, in den Rechnern der Atari XL/XE… …   Deutsch Wikipedia

  • DLL — steht in der Informatik für: Dynamic Link Library, Dynamische Verbindungsbibliothek Dynamic Link Loader, ein Bestandteil des Betriebssystems BS2000 Data Link Layer, die Sicherungsschicht im OSI Modell den Davis Logemann Loveland Algorithmus zur… …   Deutsch Wikipedia

  • Dll — ist eine Abkürzung in der Informatik für: Dynamic Link Library, Dynamische Verbindungsbibliothek Dynamic Link Loader, ein Bestandteil des Betriebssystems BS2000 den Davis Logemann Loveland Algorithmus zur Lösung des Erfüllbarkeitsproblems Double… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”