mikrocontroller.net

Forum: PC-Programmierung exe , dll = PE , etc


Autor: Patrick O. (sir-patrick)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich frage mich, wie schwer es ist, sich seinen eigenen Compiler und 
Linker für Windows zu schreiben - von der Seite der Theorie aus 
zumindestens. Was ich weiß, ist, dass alle exe und dll-Daten mit einem 
Portable Executalble Teil anfangen.

Jetzt weiß ich aber nicht, wie das etc im Betreff aussieht. Das Thema 
ist ja sehr umfangreich. Kennt da jemand eine gute Zusammenfassung oder 
Dokumentation?

Freundlich Grüßend

      Patrick

Autor: madler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Compiler und Linker selbst zu schreiben wird nicht nur sehr umfangreich 
sein, sondern auch einen sehr begrenzten Nutzen haben, es sei denn Du 
willst Deine eigene Programmiersprache erfinden oder einfach nur "wissen 
wies geht".

Um einen eigenen Compiler für eine Programmiersprache zu bauen, haben 
sich lex  flex und yacc  bison bewährt, quasi ein Toolkit zum 
Compilerbau
http://de.wikipedia.org/wiki/Lex_(Informatik)
http://de.wikipedia.org/wiki/Yacc

Bücher über "Compilerbau" gibts in jeder Uni-Bibliothek Deiner Wahl.

Autor: madler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sollte heissen "lex bzw flex und yacc bzw bison". Man sollte doch die 
Vorschau benutzen...

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Compilerbau, besuche 'ne Vorlesung an einer Hochschule deines 
Vertrauens.

Autor: Bartli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Frage ist doch, was du genau machen willst. Willst du einen Compiler 
für eine (selbsterfundende) Sprache schreiben, oder wirklich einen 
Linker? Ich meine, Compilerbasteln kann ja Spass machen, aber sich mit 
dem PE-Format rumärgern?

Wenn du jetzt zum Bleistift nur einen Compiler bauen willst, dann 
vergiss den Linker ganz einfach bzw. nimm einen existierenden Assembler 
und einen existierenden Linker und mach deinen Compiler so, dass er 
Assemblercode generiert. Den jagst du dann durch den Assembler, die 
enstehenden Objetfiles linkst du, fertig.

Ansonsten: http://win32assembly.online.fr/tutorials.html (Such nach "PE 
Tutorial"). Kann allerdings sein, dass das Zeugs ein bisschen veraltet 
ist.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.