02.11.2013 Aufrufe

PDF, 97KB - Westfälische Wilhelms-Universität Münster

PDF, 97KB - Westfälische Wilhelms-Universität Münster

PDF, 97KB - Westfälische Wilhelms-Universität Münster

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Kapitel 2: Das Konzept „Algorithmus“<br />

und um das Verständnis für die Abstraktionsstufe „Quellcode“ im Prozess der<br />

schrittweisen Verfeinerung.<br />

Der Quellcode kann für sich genommen noch nicht auf einer konkreten Maschine<br />

ausgeführt werden. Vielmehr muss er in eine Repräsentationsform umgesetzt<br />

werden, die einer Maschine (dem Computer) zugänglich ist. Dazu wird der<br />

Quellcode von einem Compiler der benutzten Programmiersprache in einen<br />

Maschinencode bzw. in Maschinensprache übersetzt. Erst jetzt kann das Programm,<br />

und mit ihm der Algorithmus zum laufen gebracht werden!<br />

Der Maschinencode stellt die niedrigste Abstraktionsstufe dar. Eine algorithmische<br />

Beschreibung in Maschinencode ist jetzt maschinenabhängig, wohingegen eine<br />

Beschreibung in Form von Quellcode nach wie vor von der konkreten Maschine<br />

abstrahiert. In Java kann z.B. ein und derselbe Quellcode in verschiedene<br />

Maschinencodes übersetzt werden. Das compilierte Programm liegt in diesem<br />

Beispiel als „Quasi-Maschinencode“ für die Java-Virtual-Machine vor, dem so<br />

genannten Bytecode. Dieser sei aus Platzgründen nicht an dieser Stelle, sondern im<br />

Anhang A vollständig aufgeführt.<br />

Allerdings ist der Quellcode insoweit spezifischer als ein Pseudocode mit gleicher<br />

Bedeutung, als dass der Quellcode ausschließlich für die Programmiersprache gilt,<br />

in der er formuliert wurde. Soll beispielsweise ein in der Programmiersprache Java<br />

geschriebener Quellcode von einem Compiler für die Programmiersprache C++ in<br />

Maschinencode übersetzt werden, wird dies nicht ohne weiteres gelingen.<br />

Anhand dieses eher simplen Beispiels kann leicht der Eindruck entstehen, das sich<br />

der Prozess der schrittweisen Verfeinerung nur über wenige Verfeinerungsstufen<br />

(in diesem Beispiel zwei Stufen) erstreckt. Typischerweise führt eine schrittweise<br />

Verfeinerung zu deutlich mehr als zwei Ableitungsschritten.<br />

Die Folgende Abbildung soll noch einmal den Entstehungsprozess von Algorithmen<br />

veranschaulichen.<br />

12

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!