12.07.2015 Aufrufe

Einführung in C/C++ - Alex-weingarten.de

Einführung in C/C++ - Alex-weingarten.de

Einführung in C/C++ - Alex-weingarten.de

MEHR ANZEIGEN
WENIGER ANZEIGEN
  • Keine Tags gefunden...

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

6 KAPITEL 1. PROGRAMMIEREN IN C/<strong>C++</strong>Hexa<strong>de</strong>zimalzahlen anstelle <strong>de</strong>r Nullen und E<strong>in</strong>sen wie<strong>de</strong>rgegeben:4c01 0300 66da 7d31 da00 0000 0d00 00000000 0401 2e74 6578 7400 0000 0000 00000000 0000 3000 0000 8c00 0000 bc00 00000000 0000 0300 0000 2000 0000 2e64 61746100 0000 3000 0000 3000 0000 0000 00000000 0000 0000 0000 0000 0000 0000 00004000 0000 2e62 7373 0000 0000 3000 0000Diese Form ist für e<strong>in</strong>en Menschen nicht mehr verständlich,statt<strong>de</strong>ssen für die Masch<strong>in</strong>e, weshalb sie als Masch<strong>in</strong>enco<strong>de</strong>bezeichnet wird, gelegentlich auch als Objektco<strong>de</strong>. E<strong>in</strong> Zurück-Übersetzen <strong>in</strong> Assemblerco<strong>de</strong> ist nur e<strong>in</strong>geschränkt möglich 2 .Obige Form ist jedoch immer noch nicht ausführbar. Wir verwen<strong>de</strong>ne<strong>in</strong>e Standard-Funktion pr<strong>in</strong>tf() zur Ausgabe auf <strong>de</strong>nBildschirm. Auch h<strong>in</strong>ter <strong>de</strong>m Wörtchen ma<strong>in</strong> verbirgt sich e<strong>in</strong>iges.Deren Co<strong>de</strong> muß noch h<strong>in</strong>zugefügt wer<strong>de</strong>n, dann kanndie Masch<strong>in</strong>e loslegen mit <strong>de</strong>r Begrüßung. Diesen letzten Schrittvollzieht <strong>de</strong>r L<strong>in</strong>ker. Der Anfang <strong>de</strong>s ausführbaren Programmeshallo.exe sieht nicht besser aus als vorher, <strong>de</strong>r Umfang <strong>de</strong>sProgrammfiles ist größer gewor<strong>de</strong>n:4d5a 0000 0400 0000 2000 2700 ffff 00006007 0000 5400 0000 0d0a 7374 7562 2e682067 656e 6572 6174 6564 2066 726f 6d207374 7562 2e61 736d 2062 7920 646a 61736d2c 206f 6e20 5475 6520 4a61 6e20 33302032 333a 3433 3a35 3820 3139 3936 0d0a5468 6520 5354 5542 2e45 5845 2073 7475Das müsste e<strong>in</strong> Programmierer schreiben, gäbe es ke<strong>in</strong>e höherenProgrammiersprachen. Als Kontrast dazu e<strong>in</strong> kurzes Beispiel e<strong>in</strong>erproblemangepassten, masch<strong>in</strong>enfernen Sprache (SQL). DieAufgabe sei die Abfrage e<strong>in</strong>er Datenbank, die ihre Daten <strong>in</strong> Formvon Tabellen mit Spalten und Zeilen hält:2 Genauer: Das Rück-Übersetzen ist möglich, das Ergebnis jedochpraktisch unbrauchbar, wenn es um mehr als triviale Programmegeht.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!