Webserver - software

Hardware - Software (Homepage Programme zB. ) - Home PC - Fragen - Antworten –Tipps

Moderator: lauras

Beiträge bitte im neuen Forum

Webserver - software

Beitragvon drPHIP132 » Dienstag 10. Januar 2012, 18:28

Hallo leute,

Ich interessiere mich wirklich derbst für die kleinsten bestandteile von PC => software mäßig^^

Wenn ich jetzt in php folgendes script habe
Code: Alles auswählen

<?php
md5
("wort");
?>

dann wird dieser Code auf dem server ja in C(++) umgewandelt, soweit klar.

Ein C(++) Compiler setzt das ganze dann in Maschienensprache. Das ist doch dann der uns allen bekannte Binäre Code. (zum Beispiel: 01101)
Woher weiß jetzt aber ein Computer, dass er mit zum Beispiel 01101 etwas nach einem vorgegebenen Muster verschlüsseln soll und nicht zwei Zahlen addieren?
Einen compiler auf eine Niedrigerere Stufe gibt es ja nun nicht mehr.

Woher weiß der Computer den nun, was zu tun ist?
Ich verstehe das nicht und finde ehrlich gesagt dazu auch nix :(

Kann mich bitte wer erleuchten?
Benutzeravatar
drPHIP132
HTML-Acrobat
 
Beiträge: 744
Registriert: Samstag 15. Januar 2011, 19:10
Wohnort: Sachsen, Erzgebirge

Re: Webserver - software

Beitragvon Basiii » Mittwoch 11. Januar 2012, 03:36

Der Webserver wandelt den PHP Code nicht in C++ Code um und kompiliert ihn dann, der Webserver hat eine ganz eigene Art PHP zu kompilieren, PHP wird nicht in C++ umgewandelt sondern wurde lediglich auf dem selben Prinzip wie C++ entwickelt (Syntax, Funktionalität, etc.)

Warum der Computer weiß was zu tun ist?

Dafür muss man natürlich wissen wie ein Prozessor arbeitet.

Der Prozessor an sich kann eigentlich nur: addieren, subtrahieren und verketten (Bytes aneinander hängen).

Der Maschinencode heißt übrigens nicht Maschinencode weil irgend ein Entwickler das witzig fand, der Maschinencode ist ein für Maschinen lesbarer Code.
Ein Prozessor kann kein "a" lesen, aber der Prozessor kennt die Zustände: Strom / kein Strom (1 / 0).
Nehmen wir jetzt das a, das a, genauer das A.
Das große A hat eine nDezimalwert von 65 (das kleine a 97), im Maschinencode sieht 65 so aus: 1000001, siehe dazu folgende Tabelle:

Code: Alles auswählen
1 = 64 +
0 = 32 +
0 = 16 +
0 = 8  +
0 = 4  +
0 = 2  +
1 = 1 =

64 + 1 = 65


Ein Prozessor arbeitet aber mit Bytes, jede 1 oder 0 in unserem neuen String ist ein Bit, ein Byte fasst 8 Bit und man käme insgesamt auf einen Dezimalwert von 255, ein Byte kann also 255 Zeichen auffassen (Achtung, heutzutage sprechen wir allerdings von 32 Bit Systemen, das heißt 4294967295 Zeichen, oder sogar 64 Bit: Zahl nicht so wirklich nachvollziehbar, wer hier eine PHP Aufgabe möchte: erstelle eine Schleife welche nach oben genannten Muster mit 64 Bit den Dezimalwert ausrechnet).

Da unser String (1000001) nur 7 Stellen hat, addieren wir für unser 8 Bit System noch eine 0 davor: 01000001

Der Prozessor bekommt nun diesen Code (noch nicht ganz). Wie auf dem Arbeitsamt kommt der Code erst mal ins Wartezimmer, hier ist das der RAM-Speicher (Random Access Memory, Speicher zum lesen, schreiben, überschreiben und löschen).
Von dort aus kommt er ins 1. Büro des Arbeitsamtes, dem Hauptteil des Prozessors, dieser liest den Code und weiß nun indirekt das es ein A werden soll, jedoch weiß der Prozessor nicht was damit zu tun ist, also spuckt er Fehler aus (meist ein Alert Fenster in dem der Speicherplatz auf dem RAM-Speicher benannt wird welcher Fehlerhaften Code sendet).

Kommt nun aber eine ganze Feriengruppe aus dem RAM-Speicher in den Prozessor (ein Willkürliches Beispiel: 00000010, 00110011, 00000001 [es stimmt zwarn icht unbedingt aber diese Kette an Bytes soll jetzt mal 2 + 1 heißen]).
Der Sachbearbeiter auf dem Arbeitsamt (der Prozessor) sieht jetzt 2 Zahlen und einen Operator (das +) und weiß somit: Diese Gruppe schicke ich in die Abteilung für + Rechnung, also macht sich die Reisegruppe auf in den 3. Stock auf das Addieramt, dort angekommen wird ein Sachbearbeiter herausfinden das 2 + 1 = 3 ist und wird mit einem neuen Operator (z.B. =) die Reisegruppe zuückschicken, diese sähe dann z.B. so aus: (00000000, 11110000, 00000011 [ = 3 ]).
Nun wird die Reisegruppe wieder zum 1. Sachbearbeiter zurückgeschickt, der sieht: ein ausgebbares Ergebnis und setzt die Gruppe in den Rückgabebus (interessant: eine Gruppe würde man in einen Bus setzen, zum verreisen, ein Ergebnis der CPU setzt man in den Return Bus, heißt auch so..).
Der Bus fährt zurück zum Programm und wird dort wieder in für das Programm lesbaren Code verwandelt (dieses mal eben von 00000011 zu 3).

So grob lässt sich das erklären :!:
Benutzeravatar
Basiii
HTML-Acrobat
 
Beiträge: 1139
Registriert: Dienstag 12. Januar 2010, 13:57

Re: Webserver - software

Beitragvon drPHIP132 » Mittwoch 11. Januar 2012, 07:03

habe verstanden :)
Benutzeravatar
drPHIP132
HTML-Acrobat
 
Beiträge: 744
Registriert: Samstag 15. Januar 2011, 19:10
Wohnort: Sachsen, Erzgebirge


Beiträge bitte im neuen Forum

Zurück zu Computer / Programme

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron