www.wikidata.de-de.nina.az
Dieser Artikel ist nicht hinreichend mit Belegen beispielsweise Einzelnachweisen ausgestattet Angaben ohne ausreichenden Beleg konnten demnachst entfernt werden Bitte hilf Wikipedia indem du die Angaben recherchierst und gute Belege einfugst Verweis auf einen externen Literaturkatalog gilt nicht als Beleg Der externe Katalog konnte sich andern daher sollten in diesem Artikel samtliche Quellen eindeutig genannt werden mit denen sich dieser Artikel nachprufen lasst Mai 2016 Eine hohere Programmiersprache ist eine Programmiersprache zur Abfassung eines Computerprogramms die in Abstraktion und Komplexitat von der Ebene der Maschinensprachen deutlich entfernt ist Die Grenze zwischen einfachen und hoheren Programmiersprachen ist nicht eindeutig definiert Mindestmerkmal ist dass die Befehle hoherer Programmiersprachen nicht unmittelbar von Mikroprozessoren verstanden und ausgefuhrt werden konnen Die Befehle mussen durch Interpreter oder Compiler in Maschinensprache ubersetzt werden Oft sind noch weitere Stufen wie umfangreiche Betriebssysteme dazwischengeschaltet Die Bezeichnung als hohere Sprache bezieht sich in der Informatik nicht auf den Schwierigkeitsgrad darin zu programmieren Im Gegenteil sollen es hohere Programmiersprachen erleichtern komplexe Aufgaben mit einem Computerprogramm zu operationalisieren Vielmehr bezieht sich das Attribut hoher auf die Abstraktionsebene der Programmiersprache Vereinfacht kann man sagen dass hohere Programmiersprachen mehr und komplexere logische Zusammenhange kurzer ausdrucken der dann durch automatisierte Prozesse auf Maschinencode heruntergebrochen wird Die Lesbarkeit des Programmtextes wird so erhoht und die Anzahl der expliziten rekursiven Aufgaben verringert Inhaltsverzeichnis 1 Geschichte 2 Vergleich zur Assemblersprache 3 Einordnung und Nachfolge 4 Beispiele 5 Siehe auch 6 Weblinks 7 EinzelnachweiseGeschichte BearbeitenDie ersten Computer wurden mit Hilfe von Programmen in Maschinencode programmiert Dieser besteht lediglich aus einer Folge von Zahlen die vom Prozessor als Befehlsfolge interpretiert werden Diese Befehle bestehen aus einfachen Anweisungen wie Arithmetik Speicherzugriffen usw Die erste Innovation war die Erfindung von Assemblersprachen die nicht abstrahieren die Befehle aber in Textform darstellen Als weltweit erste hohere Programmiersprache kann Plankalkul von Konrad Zuse angesehen werden das allerdings nicht praktisch angewandt wurde Erst Ende der 1950er Jahre wurden Computer so leistungsfahig dass Ubersetzungsprogramme die Eingabe von Programmen wesentlich erleichtern konnten Fortran ALGOL und Lisp waren die ersten Vertreter deren Namen noch an die neuen komfortableren Moglichkeiten der Sprachen und Ubersetzerprogramme erinnern Fortran FORmula TRANslation Formelubersetzung ALGOL ALGOrithmic Language Algorithmensprache LISP LISt Processing ListenverarbeitungDiese ersten hoheren Sprachen enthielten abstrakte Elemente wie bedingte Anweisungen wenn x wahr dann fuhre y aus und Schleifen solange x gilt fuhre y aus Diese Konstrukte konnten nun mit weniger Aufwand programmiert werden und druckten in lesbarer Form ihren Zweck aus Spater folgten weitere Sprachen die ein hoheres Mass an Abstraktion boten Ein Programm konnte in Unterprogramme Prozeduren eingeteilt und diese wiederum zu Modulen zusammengefasst werden So war es moglich Teilprogramme von verschiedenen Programmierern entwickeln zu lassen ohne dass eine Konvention uber die verwendeten Variablen getroffen werden musste da fur jede Prozedur die Variablen neu definiert wurden Wohl aber wurden Ein und Ausgangsparameter vom Haupt ans Unterprogramm ubergeben und umgekehrt Die ersten hoheren Sprachen wurden direkt in Assemblersprachen oder Maschinencode ubersetzt um ausgefuhrt werden zu konnen Einige modernere Sprachen werden heute zunachst in weniger hohe Sprachen ubersetzt aus denen wiederum ein effizienter Maschinencode gewonnen werden kann Die Programme mit denen solche Ubersetzungen ausgefuhrt werden heissen Compiler Da die Abstraktionen mittlerweile weit vorangeschritten sind ist der Begriff hohere Sprache relativ zu sehen So sind die ersten Sprachen wie Fortran hohere Sprachen als Assembler und modernere Sprachen hoher als Fortran Daneben kann ein Programm in einer hoheren Programmiersprache auch interpretiert werden Dabei wird das Programm nicht vorab in Maschinencode ubersetzt sondern wahrend seiner Laufzeit fuhrt ein Interpreter die Anweisungen aus Dieser bildet also eine Schnittstelle zwischen Rechner und Programm und ist heutzutage meist in einer anderen hoheren Programmiersprache geschrieben Die meisten modernen Programmiersprachen BASIC C C C VB NET Pascal und Java sind Sprachen der dritten Generation Vergleich zur Assemblersprache BearbeitenAssemblersprache Hohere ProgrammierspracheStark komprimierte platzsparende Syntax Syntax an menschliche Gewohnheiten angepasstNur auf einem bestimmten Prozessortyp lauffahig Grossteils prozessorunabhangigHohe Geschwindigkeit durch maschinennahe Befehle Geschwindigkeitsverlust durch Ubersetzung in MaschinenspracheDatentypen des Prozessors Byte Wort Langwort Abstrakte maschinenunabhangige Datentypen Gleitkommazahlen u a Nur einfache Datentypen Datenstrukturen Feld Record Sprungbefehle Makros Mehrere Kontrollstrukturen if while Grundlegende semantische Analyse moglich Weitgehende semantische Analyse moglichBeispiel START ST ST MOV R1 2 MOV R2 1 M1 CMP R2 20 BGT M2 MUL R1 R2 INI R2 JMP M1 M2 JSR PRINT END Beispiel A 2 FOR I 1 TO 20 LOOP A A I END LOOP PRINT A Einordnung und Nachfolge BearbeitenDie hoheren Programmiersprachen nennt man auch Programmiersprachen der dritten Generation englisch third generation languages kurz 3GL In Programmiersprachen der dritten Generation muss genau beschrieben werden wie ein bestimmtes Problem gelost werden soll Die Aufgabenstellung ist schwierig aus dem Quellcode zu erkennen Darum wurden Programmiersprachen der vierten Generation entwickelt die normalerweise fur spezielle Problemlosungen optimiert sind und bei denen der Code beschreibt was der Computer ausfuhren soll Heute gibt es zahlreiche unterschiedliche hohere Programmiersprachen von denen einige allgemein anwendbar sind andere aber nur fur Spezialanwendungen eingesetzt werden Allgemein anwendbare Programmiersprachen general purpose languages sind nicht auf spezielle Anwendungsfalle zugeschnitten und bieten allgemeine Abstraktionen Die sog domanenspezifischen Sprachen Domain Specific Languages DSL andererseits ermoglichen Abstraktionen fur einen bestimmten Anwendungsfall Letztere werden derzeit intensiv erforscht So gibt es Sprachen fur die Gleissteuerung von Zugstrecken mit teilweise grafischer Programmierung d h der Programmtext besteht dort aus Grafiken die beispielsweise per Mauseingabe manipuliert werden konnen Das Ziel bei dieser Programmierweise ist es eine Abfassung von Programmen in Textform unnotig zu machen und die Programmierung durch intuitive Bedienung einer grosseren Anwendergruppe zuganglich zu machen Beispiele BearbeitenEinige Beispiele fur aktuelle hohere Programmiersprachen sind im Folgenden gelistet Neben dem Namen ist angegeben ob es sich um eine interpretierte Sprache handelt oder ob eine Ubersetzung in Maschinencode durch einen Compiler erfolgt Bei interpretierten Sprachen ist ein entsprechendes Programm Interpreter zur Laufzeit erforderlich um den Quellcode zu interpretieren und auszufuhren Java in Bytecode kompiliert durch Java Virtual Machine interpretiert oder weiter in Maschinencode kompiliert C kompiliert JavaScript interpretiert C in Common Intermediate Language kompiliert durch Virtual Execution System interpretiert 1 Python interpretiert PHP interpretiert Ruby interpretiertSiehe auch BearbeitenZeittafel der Programmiersprachen Liste von ProgrammiersprachenWeblinks BearbeitenLiteratur uber das Thema Hohere Programmiersprache im Katalog der Deutschen NationalbibliothekEinzelnachweise Bearbeiten blackdwarf Was ist verwalteter Code Abgerufen am 10 Marz 2019 deutsch Normdaten Sachbegriff GND 4160367 9 lobid OGND AKS Abgerufen von https de wikipedia org w index php title Hohere Programmiersprache amp oldid 228258131