Die erste Programmiersprache..

Diskutiere Die erste Programmiersprache.. im Elektronik und Chipkarten-Programmierung Forum im Bereich Hardware & Software Forum; Folgendes hab ich mir grade mal überlegt: Wie entstand die erste Programmiersprache auf der Welt, also wie hat der erste Programmierer einem PC...
  • Die erste Programmiersprache.. Beitrag #1
nitrouz92

nitrouz92

Bekanntes Mitglied
Dabei seit
23.07.2008
Beiträge
1.927
Reaktionspunkte
0
Folgendes hab ich mir grade mal überlegt: Wie entstand die erste Programmiersprache auf der Welt, also wie hat der erste Programmierer einem PC beigebracht, was er machen soll, wenn man irgendein code opder befehl schreibt. also mal ein beispiel, damit es vll klarer wird: wenn man bei cmd.exe den befehl "tree" eingibt, wird die ordnerstrukur des aktuellen pfades angezeigt, aber wie wurde dem PC beigebracht, dass er das bei dieser eingabe so machen soll? Natürlcih gilt meine frage hauptsächlich den programmiersprachen, also wie wurde die erste programmiersprcache entwickelt, wenn man j eigentlcih noch kleine anderen programmiersprachen zum programmieren benutzen kann.

ich hoffe ich habe meine frage klar beschrieben.
mfg
nitrouz92
 
  • Die erste Programmiersprache.. Beitrag #2
Trashman1611

Trashman1611

Bekanntes Mitglied
Dabei seit
07.04.2003
Beiträge
2.010
Reaktionspunkte
1
Ort
bei Mama
tree ist der aufruf eines programms, kein programmierbefehl. Programmiersprachen sind konvetionen zum aufruf über einen compiler, der die festgelegten befehle in maschinencode übersetzt. natürlich könnte man auch direkt in maschinencode porgrammieren, dies wäre aber nicht sehr komfortabel. Prozessoren kennen nur einen begrenzten Befehlssatz wie "Lade Register" oder "Addiere", also Speicheroperationen und Logische Operationen. siehe http://de.wikipedia.org/wiki/Maschinensprache
 
  • Die erste Programmiersprache.. Beitrag #3
nitrouz92

nitrouz92

Bekanntes Mitglied
Dabei seit
23.07.2008
Beiträge
1.927
Reaktionspunkte
0
ja das tree kein programmierbefehl ist, ist mir auch klar, ich behaupte ja schließlich nicht, das die cmd.exe interpreter für programmiersprachen ist, sondern nur befehle ausführt, da hab ich das vielleicht etwas ungünstig ausgedrückt, nur hat mich halt nebenbei noch interessiert wie die eingabeaufforderungsbefehle zu stande kamen
Aber trotzdem danke für den link, sowas hab ich gesucht

mfg
nitrouz92
 
  • Die erste Programmiersprache.. Beitrag #4
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Übrigens liegt die Entwicklung der ersten "Programmiersprache" schon weiter zurück als man viell. denken mag. Und, noch unglaublicher für die damalige Zeit, entwickelt von einer Frau: ;) Ada Lovelace.
 
  • Die erste Programmiersprache.. Beitrag #5
O

oiermann

Bekanntes Mitglied
Dabei seit
30.12.2005
Beiträge
1.342
Reaktionspunkte
0
Ort
Milchstrasse
Kurz und Knapp noch hier im Thema erklärt,

Der Rechner besteht im Grunde aus nichts anderem als Registern in die du Werte zwischenspeichern kannst und vielen vielen vielen tausenden logischen, elektronischen Schaltungen, die Werte hin und her schubsen und "bearbeiten" können. Du hast ein paar Leitungen, die Daten annehmen und evtl. ausgeben können, Leitungen, die Daten ausgeben und Leitungen, die Befehle entgegennehmen. Wohlgemerkt, ALLES elektrische Signale.
Mal angenommen wir haben einen Prozessor mit 8051 Kern.
Hier würde eine Befehlszeile so aussehen:
Code:
mov a,#0x27
Dieser Assemblerbefehl schreibt in den Akku (ein 8 Bit breiter Speicherplatz im RAM) den Hex-Wert 0x27. Dieser Wäre Binär 00100111.
Der Assembler übersetzt diesen Befehl in eine Folge von Nullen und Einsen, mov a,#konstante wäre 0x74, binär 01110100. (HEX-Werte für ASM-Befehle siehe Befehlsliste 8051)
Nun liest der "Prozessor" eben im Code-Speicher Byte für Byte die Stellen aus und sieht, "Aha, hier haben wir 01110100 (mov) und danach 00100111 (wert) und legt nun an die 8 Leitungen für die Befehle den Befehl an (Leitung 0 = LOW (Masse), Leitung 1 = LOW, Leitung 2 = HIGH (Spannung), ....) und den Wert an die Leitungen für die Daten.
Die Elektronik im Prozessorkern erkennt nun, dass es der mov Befehl ist um einen Wert in den Akku zu schreiben und gibt den Wert an die Elektronik weiter, die dafür zuständig ist, den Wert in den Akku, also RAM, zu schreiben.

Das ist im Grund zwar auch eine Programmiersprache, doch eben das, was der Prozessor mehr oder weniger direkt verarbeiten kann. Da dies sehr sehr aufwendig ist und auf einem Prozessor mit zum Beispiel einem x86 Kern (unsere "normalen" PCs) dieser mov Befehl oder ein vergleichbarer Befehl einen ganz anderen Wert hat (von den Grundlegenden Unterschieden mal ganz abgesehen, wie zB. 32/64Bit statt 8Bit...) wurden höhere Programmiersprachen entwickelt.

Wie zum Beispiel C. Der C-Compiler übersetzt deinen C Code in Assemblercode und assembliert diesen dann.

Dein Tree sind zig einzelne Assemblerbefehle, mit einem Disassembler kannst du .exen und .com Dateien unter die Lupe nehmen. Bei deinem Tree wird unter anderen auf die Festplatte zugegriffen, auf dem Bildschirm was ausgegeben, berechnet, ..., ...

Das kann sehr sehr aufwendig sein und in Assembler würde sowas viel zu viel Zeit kosten und wäre teilweise auch nicht mehr möglich (nicht mehr zu überschauen) und der, in meinen Augen, größte Vorteil von höheren Programmiersprachen ist, dass man den Code zu einem Programm auch auf anderen CPUs laufen lassen kann, man muss nur den Compiler für den anderen Prozessor anpassen, wenn zB. ein Hello World Programm auf dem Prozessor A so aussehen würde "AAABBBASASDKFFJASDHWEQDJHDASDJHVBKVSDA" und auf dem Prozessor B so "AS(§"Q)("§($)§EU"§DOIHJC", kümmert den Programmierer das gar nicht, da sein Quellcode (z.B. printf("Hallo Du da\n");) vom Compiler in den Maschinencode übersetzt wird.

Ich hoffe, ich habe jetzt nichts vergessen....
 
  • Die erste Programmiersprache.. Beitrag #6
nitrouz92

nitrouz92

Bekanntes Mitglied
Dabei seit
23.07.2008
Beiträge
1.927
Reaktionspunkte
0
Ach das ist endlich mal eine gute Erklärung. Danke.
 
  • Die erste Programmiersprache.. Beitrag #7
Max11.111

Max11.111

Bekanntes Mitglied
Dabei seit
12.06.2008
Beiträge
2.416
Reaktionspunkte
0
Wow, oiermann, von mir auch noch ein großes Dankeschön für diese super Erklärung:goil::goil:
 
  • Die erste Programmiersprache.. Beitrag #8
O

oiermann

Bekanntes Mitglied
Dabei seit
30.12.2005
Beiträge
1.342
Reaktionspunkte
0
Ort
Milchstrasse
Hehe, danke für die Blumen :)

Es stand ja eigentlich schon alles, was man wissen muss, in dem und den weiterführenden Wiki-Artikeln, aber ich habe selber lange gebraucht, bis ich das soweit verstanden habe und weiss wie umfangreich das Thema ist, darum habe ich es nochmal kurz angeschnitten. Wobei das nicht heissen soll, dass ich weiss wie ein Prozessor genau funktioniert, das ist wirklich nur die Spitze des Eisbergs ;)

//edit: Also Prozessor.... Wenn man wissen will, was ein Compiler/Assembler macht, muss man wissen, was das darunter macht ;)
 
  • Die erste Programmiersprache.. Beitrag #9
M

Malekith

Mitglied
Dabei seit
26.05.2009
Beiträge
6
Reaktionspunkte
0
Hallo Zusammen,

nach einer Antwort auf diese Frage habe ich auch schon lange gesucht

Ich möchte es nochmal aufgreifen, weil die Antworten der vorherigen Poster, wie ich finde, nicht 100%ig zu der Frage treffend war. Ich habe auch das ganze Zeug in Wikipedia gelesen, aber das was ich wissen wollte, wurde dadurch nicht beantwortet (aus meiner Sicht).

Ich versuche es mal anders zu formulieren:

Wie hat man aus technischer Sicht aus (mechanischen/ elektrischen) Schaltungen (Hardware) geschafft, eine Programmiersprache zu entwickeln, ohne Compiler, Programmiersprache( C, Assembler, ... ) etc zur Verfügung gehabt zu haben? Wenn man ein Programm (Software) schreiben will, benutzt man ein Compiler oder ein Assembler, der dann den Code umwandelt.

Vielleicht kann einer das beantworten!

Danke im Voraus!

Gruß

Malekith
 
Zuletzt bearbeitet:
  • Die erste Programmiersprache.. Beitrag #10
Egal88

Egal88

Super-Moderator & Mr. Powerforen 2012
Teammitglied
Dabei seit
13.05.2000
Beiträge
10.828
Reaktionspunkte
4
Ort
hinter'm Mond ...
Die ersten Programme wurden OHNE Compiler und OHNE Assembler direkt in Maschinensprache geschrieben.
 
  • Die erste Programmiersprache.. Beitrag #11
nitrouz92

nitrouz92

Bekanntes Mitglied
Dabei seit
23.07.2008
Beiträge
1.927
Reaktionspunkte
0
Die ersten Programme wurden OHNE Compiler und OHNE Assembler direkt in Maschinensprache geschrieben.

Ich glaube aber, dass er mit seiner Frage meinte, wie überhaupt die Maschinensprache funktioniert, also wie die Maschine überhaupt "weiss", was sie machen soll.
 
  • Die erste Programmiersprache.. Beitrag #12
M

Malekith

Mitglied
Dabei seit
26.05.2009
Beiträge
6
Reaktionspunkte
0
Danke für deine Antwort. Vielleicht hab ich das zu ungenau formuliert, aber wie haben die Pioniere das genau gemacht? Welche technischen Hilfsmittel haben sie benutzt, damit ohne Compiler / Assembler ein Programm entstanden ist? Haben Sie auf ihren Magnetbändern gewisse "Maschinencode-Teilsequenzen" gespeichert und dann manuell / mechanisch die Aparate so gesteuert, dass dann durch Aneinanderreihung dann das Programm oder der erste Compiler entstand ist bzw. wenn es solche Teilsequenzen oder ähnliches gab, wie haben sie diese auf die Bänder gebracht?

Ist vielleicht wie beim Lagerfeuer machen!? Bevor das Feuer machen erfunden wurde, wusste keiner wie das geht. Bis einer dann das herausfand, dass durch das Aufeinanderschlagen von 2 Steinen funken sprühen und das dann das Stroh entzündet oder durch schnelle Reibung von 2 Holzstöckchen.

Meine Frage klingt irgendwie die Richtung: Was war vor dem Urknall im Universum? ^^

Gruß

Malekith
 
  • Die erste Programmiersprache.. Beitrag #13
U

UnimatrixZero

Bekanntes Mitglied
Dabei seit
27.06.2001
Beiträge
645
Reaktionspunkte
0
Richtig. Um eine Programmiersprache zu entwickeln braucht man keinen Compiler und auch keinen Computer.

Ein Compiler war anfangs überflüssig, da man direkt die Maschinenbefehle des Prozessors verwendet hat. Die Maschinenbefehle sind direkt in Hardware aus Logikgattern aufgebaut. Da steckt kein Programm mehr dahinter.

Um das Programm und die Daten in den Speicher zu bekommen, wurden Lochkarten verwendet. Die einzelnen Maschinenbefehle wurden in die Karten gestanzt. Über einen Kartenleser sind die Befehle in den Prozessor geladen und ausgeführt worden.

Um die Funktionsweise aktueller Rechner zu verstehen, kannst Du mal nach Von Neumann suchen (z.B. http://de.wikipedia.org/wiki/Von-Neumann-Architektur). Die meisten heutigen Rechner arbeiten nach diesem Prinzip.
 
  • Die erste Programmiersprache.. Beitrag #14
M

Malekith

Mitglied
Dabei seit
26.05.2009
Beiträge
6
Reaktionspunkte
0
Und über Lochkarten wurde dann der Compiler programmiert, das als "Softwareprogramm" heute auf der Festplatte gespeichert ist?
 
  • Die erste Programmiersprache.. Beitrag #16
M

Malekith

Mitglied
Dabei seit
26.05.2009
Beiträge
6
Reaktionspunkte
0
Hab das Video Zuse 1 demo angeschaut. Ist schon krass. Nur war das mechanisch und die Ausgabe der Informationen war hardwareseitig (Zahlenrädchen vom "Ausgabewerk" haben sich gedreht). Heute speichert man die Daten etc. "digital" auf einem Datenträger wie z. B. CD / Festplatte und über ein Softwareprogramm ruft man die Informationen dort ab. Diese Informationen werden ja dann auf dem Monitor in digitaler Form angezeigt und nicht auf einem Rechenschieber oder Ähnliches ^^

Vielleicht ist es ganz einfach und ich beiß mich da irgendwie fest. Trotzdem danke für die rasche Hilfestellung :)

Gruß

Malekith
 
  • Die erste Programmiersprache.. Beitrag #17
U

UnimatrixZero

Bekanntes Mitglied
Dabei seit
27.06.2001
Beiträge
645
Reaktionspunkte
0
Und über Lochkarten wurde dann der Compiler programmiert, das als "Softwareprogramm" heute auf der Festplatte gespeichert ist?
Naja, irgendwie muß der Prozessor ja den Compiler ausführen können. Das geht nur über Maschinensprache. Es muß also einmal ein Compiler in Maschinensprache programmiert werden. Ist das einmal geschehen, kann der Compiler in seiner eigenen Hochsprache geschrieben werden und sich selbst compilieren.

Hier ein paar Seiten zur Geschichte von Computern und Programmiersprachen:
http://de.wikipedia.org/wiki/Computer#Geschichte
http://de.wikipedia.org/wiki/Geschichte_der_Programmiersprachen

Intressant ist auch, daß die ersten Heimcomputer alle eine Programmiersprache integriert hatten. Meistens ein Basic-Dialekt. Damit konnte man sofort loslegen und seinen Computer erkunden. Das kennen die meisten heute gar nicht mehr.
 
  • Die erste Programmiersprache.. Beitrag #18
M

Malekith

Mitglied
Dabei seit
26.05.2009
Beiträge
6
Reaktionspunkte
0
Wir kommen langsam in die richtige Richtung Unimatrixzero :) Ich nehme mal an, dass der Maschinencode in Lochkarten gespeichert wurde. Das mechanische / elektronische Rechenwerk hat diese Befehle auf ein Magnetband als Binärcode ausgegeben / gespeichert. Da dann der Code in Binärcode vorlag, wurde dann der Compiler mit diesen Binärcodes zusammengebaut. Kann man das so sagen?

Ich möchte keinen auf die Nerven gehen, weil ich da so hartnäckig nachfrage und sage schon mal Danke für deine Hilfestellung Unimatrixzero :)

Gruß

Malekith
 
  • Die erste Programmiersprache.. Beitrag #19
Egal88

Egal88

Super-Moderator & Mr. Powerforen 2012
Teammitglied
Dabei seit
13.05.2000
Beiträge
10.828
Reaktionspunkte
4
Ort
hinter'm Mond ...
Lochkarten oder Magnetbänder sind nur verschiedene Speichermedien.
Ein Compiler ist schon eine übergeordnete Software, die Hochsprachen-Befehle in Maschinensprache übersetzt.

Um mal ein Beispiel zu geben: das Betriebssystem konnte bei den frühen Rechnern nur geladen werden, wenn man den Boot-Loader über eine Art Tastatur eingab: stell' dir 8 Schalter (= 1 Byte) vor, die alle in bestimmten Stellungen stehen mussten, um dann mit einem "Enter-Schalter" byteweise in den Speicher übertragen zu werden. Erst wenn dieser Boot-Loader in RAM war, konnte der Recher überhaupt von einem externen Speichermedium sein Betriebssystem laden.
 
  • Die erste Programmiersprache.. Beitrag #20
M

Malekith

Mitglied
Dabei seit
26.05.2009
Beiträge
6
Reaktionspunkte
0
Ok danke für deine Antwort Egall88. Daraus kann ich jetzt schließen, was ich wissen wollte.

Danke auch an alle anderen :)

Gruß

Malekith
 
Thema:

Die erste Programmiersprache..

ANGEBOTE & SPONSOREN

https://www.mofapower.de/

Statistik des Forums

Themen
213.180
Beiträge
1.579.173
Mitglieder
55.879
Neuestes Mitglied
stonetreck
Oben