mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik BIN File decoden ?


Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin zusammen,

ich verwende Bascom und hauptsächlich ATMega8 und 16.
Meine Frage nun, wenn ich eine Schaltung zum freien
Nachbauen anbieten möchte, nicht aber den Code,
kann man aus dem BIN-File wieder den Bascom-Quellcode erzeugen ?
Weil so kann sich jeder selber sein µC brennen, wenn ich das BIN File
mit anbiete.

Besten Dank im voraus.

mfg
Oliver

Autor: Martin S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das nennt sich dann erst mal Disassembler. Der macht aus Binär-Code
Assembler-Code.

Wenn du das passende Werkzeug dazu hast, kann diwses möglicherweise
sogar erkennen, wit welchem Compiler (z.B. Bascom) das ganze erzeugt
wurde.

SELBST WENN jetzt keine Code-Optimierungen angesetzt wären, würdest du
daraus "nur" ein Basic-Programm bekommen. Du weist bestimmt aus
eigener Anschauung wie schwierig manche Programme zu verstehen sind,
wenn da nicht ein einziges Häppchen Doku oder Kommentar vorhanden ist.

Und so selbsterklärend ist es auch nicht immer, daß "Port_2_bit_4"
nun genau einen bestimmten Schalter abfragt. In deinem Ursprungs-Code
hast du den halt per Zuweisung (und besserer Lesbarkeit "Taste_blau"
genannt, aber woher soll der Disassembler das wissen?

Aber ich versteh deine Frage nicht: Natürlich kann jemand der an das
Binär-File kommt, das selbe Binärfile in seinen nachgemachten Krams
reinbrutzeln. Dafür braucht er aber überhaupt keine Ahnung davon zu
haben wie der Algorithmus im Chip aussieht. Er braucht lediglich
irgendwie das Zeugs übertragen bekommen. Es sei denn du vermutest, daß
jemand deinen Code weiter entwickeln möchte.

Autor: dave (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß zwar grad nicht, was das .bin ist, aber wenn es das ist, was in
den Flash reinkommt, dann kann man schon den (Assembler)Code
zurückgewinnen.
Also nacher stehen halt die einzelnen Befehle nacheinander aufgelistet
da, jedoch wird es genau so viel Arbeit sein, das wieder in Bascom zu
schreiben, wie den Assembler zu entziffern.

Also, da es eh Basic ist, kannst du dieses "Risiko" vernachlässigen.

dave

Autor: Martin S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ergänzung zum vorher gesagten: Das im 2. Abschnitt genannte Werkzeug
wäre ein Tool, welches aus Assembler code (und Kenntniss der genutzten
Bibliotheks-Routinen) dir die ursprüngliche Programmiersprache
re-compiliert. Gibts ganz selten, und funktionieren tun die noch
seltener.

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.