Auswahl der Encarta-Redaktion
Gute Bücher zum Thema "Programmiersprache", ausgewählt von den Encarta-Redakteuren.
Verwandte Elemente
Suche in Encarta
In Encarta suchen nach Programmiersprache

Windows Live® Suchergebnisse

Alle Suchergebnisse anzeigen:
Windows Live® Suchergebnisse

Programmiersprache

Enzyklopädieartikel
Multimedia
Programmier­sprachen (Auswahl)Programmier­sprachen (Auswahl)
Artikelgliederung
1

Einleitung

Programmiersprache, allgemein die Bezeichnung für eine künstliche Sprache, deren wesentliches Merkmal eine oder auch mehrere Aufstellungen von Befehlsfolgen ist. Im herkömmlichen Sinne werden diese, häufig auch ineinander verschachtelten Befehlsabfolgen von Computern abgearbeitet und ausgeführt – auch andere, mit geeigneter Technik ausgerüstete Maschinen sind in der Lage, Befehlsfolgen umzusetzen. Die Entscheidung darüber, ob eine Programmiersprache vorliegt oder nicht, kann schwierig sein. Allgemein wird jedoch verlangt, dass die Übersetzung von Befehlen der Programmiersprache in einen oder mehrere Codes, die der Computer versteht, vollkommen systematisch sein muss. Diese Übersetzungsarbeit übernimmt normalerweise ebenfalls der Computer, d. h. seine zentrale Verarbeitungseinheit.

2

Niedere Programmiersprachen

Mit einem geringen Sprachumfang ausgestattet, arbeiten Mikroprozessoren ausschließlich mit binären elektronischen Signalen. Das Übermitteln eines Befehls an einen Mikroprozessor bedeutet in Wirklichkeit das Senden einer zeitlich genau abgestimmten Serie von „An”- und „Aus”-Signalen. Diese Signalfolgen ergeben den Maschinencode (oder die Maschinensprache). Der Code stellt normalerweise Zahlen, Daten und Befehle dar. So genannte Mnemonics (Merkwörter) sind leichter einprägsame Umschreibungen für einzelne Befehle. Üblicherweise handelt es sich hierbei um englische Wörter, wie z. B. STORE (speichern), ADD (addieren) oder JUMP (springen). Das Ergebnis daraus ist eine so genannte Assemblersprache – eine Sprache auf einer sehr niedrigen Ebene, die jeweils speziell für einen bestimmten Mikroprozessor gilt. So steht beispielsweise beim 8086-Mikroprozessor der Befehl RET (Return) für den Binärcode 11000011b.

Niedere Programmiersprachen, wie Assembler, erzeugen sehr schnelle Programme, sind aber meistens aufwendig zu erlernen. Ein weiterer entscheidender Nachteil von Programmen in niederen Programmiersprachen, die sehr speziell auf einen Mikroprozessortyp zugeschnitten sind, ist die erforderliche vollständige Neuentwicklung, wenn das Programm auf einem anderen Rechner eingesetzt werden soll.

3

Höhere Programmiersprachen

Computer werden allgemein als Maschinen angesehen, die solche Aufgaben wie beispielsweise Tabellenkalkulation oder Textverarbeitung bewältigen. Verglichen mit der oben erfolgten Beschreibung der tatsächlichen Vorgänge in einem Computer ist das die Sichtweise aus einer sehr viel höheren Ebene. Mehrere Abstraktionsebenen liegen zwischen dem, was von einem Computer erwartet wird, und dem, was er tatsächlich versteht. Im gleichen Maß besteht diese komplexe Beziehung zwischen höheren Programmiersprachen und Maschinencode.

Höhere Programmiersprachen sind meist einfach erlernbar, weil sie aus Teilen natürlicher Sprachen wie z. B. Englisch aufgebaut sind. In der sehr bekannten höheren Programmiersprache BASIC können Befehle wie „IF COUNT = 10 THEN STOP” (WENN ZAEHLER = 10 DANN STOPP) verwendet werden, wenn der Computer bei einem Zählerstand von 10 anhalten soll.

4

Interpreter und Compiler

Die Übersetzung von Assemblersprachenbefehlen (dem Quellcode) zurück in den Maschinencode ist ein unkomplizierter Vorgang, der normalerweise von einem höheren Programm durchgeführt wird, das man Compiler nennt (siehe Kompilieren). Das Übersetzen von höheren Programmiersprachen-Quellcodes wird von einem komplexeren Compiler oder einem Interpreter durchgeführt.

Ein Compiler erzeugt eine Liste von Maschinencode-Befehlen, den so genannten Objektcode, der auf dem Quellcode basiert. Der erzeugte Objektcode ist ein ablauffähiges, sehr schnelles Programm, das jedoch – bei Programmierfehlern – den Computer zum Absturz bringen kann. Im Gegensatz dazu sind Interpreter sehr viel langsamer als Compiler, weil sie keinen Objektcode erzeugen. Sie bearbeiten stattdessen den Quellcode Zeile für Zeile. Jede Zeile wird übersetzt und anschließend der entsprechende Maschinencode ausgeführt. Dieser Vorgang läuft auch dann ab, wenn dieselbe Zeile erneut eingelesen wird, wie z. B. bei Programmschleifen. Das Ergebnis ist ein zwar langsameres, allerdings weniger absturzgefährdetes Programm, denn im Gegensatz zu einem normalen Compiler kann die Programmausführung an jeder Stelle unterbrochen und auf Fehler untersucht werden.

Siehe ADA; C; C++; COBOL; FORTRAN; LISP; LOGO; Pascal; UNIX

In diesem Artikel suchen
Druckerfreundliche Version der Seite
Versenden




© 2008 Microsoft