Hallöchen, ich habe aus meinem Mikrokontroller einen Code ausgelesen. Nun möchte ich diesen Code gerne verstehen/lesen... Mit einer Hexadezimalen Anzeige brauch ich gar nicht erst anfangen, und mit Assembler bringts auch nichts... Kennt jemand ein Tool, welches Assembler in C Code bzw. Hexcode in C Code umwandelt?? mfg Frank
in spartanischen Assemblercode geht mit einem Disassembler. In C kannst du komplett vergessen.
Ich habe ein Omelett. Mit welchem Küchenwerkzeug kann ich daraus die Eier wiederherstellen?
ne, musst du nicht. Bei etwas umfanggeicheren Programmen wird das eh nichts. Denke dran: es fehlen u.a. alle Marken und Variablennamen. Wenn es ursprünglich ein Assemblerprogramm war, kann man da wahrscheinlich noch was draus machen, war es ein C-Programm (wovon man inzwischen fast automatisch ausgehen kann) ist von der ursprünglichen Struktur nicht mehr allzuviel übrig. Wichtig beim Compilieren ist ja nur, dass die Logik des Programms erhalten bleibt - wie das in Maschinensprache übersetzt wird, hängt fast auschliesslich vom verwendeten Compiler und dessen Optimierungseinstellungen ob. Also, setz deine Energie in was eigenes, und versuche nicht, in fremder Software rumzuhacken :-)
Wieder mal das Beispiel mit dem Rührei: Wie willst Du aus dem Rührei die ursprünglichen Eier wieder zusammensetzen? Ähnlich ist es, wenn man aus Maschinencode oder Assembler (von der Sache her dasselbe) ein Hochsprachen-Programm rekonstruieren will. Und wenn man aus hex-Files Assembler-Code erzeugt (per Disassembler), dann heißt das noch lange nicht, dass der Code dann auch lesbar ist. Schließlich sind da absolut keine Bezeichner drin, die der Programmierer zur Verbesserung der Lesbarkeit drin hatte, sondern i.d.R. nur Adressen von Speicherzellen usw.
Rufus t. Firefly wrote: > Ich habe ein Omelett. Mit welchem Küchenwerkzeug kann ich daraus die > Eier wiederherstellen? Ich hab sone ähnliche Maschine, vorne stecke ich die Steaks rein und hinten läuft dann die Kuh wieder raus. Peter
der Omlettvergleich hinkt ein wenig... der Code kann immer wieder vom Controller verarbeitet, das Omlett nur einmal gegessen werden ;) aber ansonsten ganz nett :) najut bleibts erstmal spannend die ganze sache... gruß Frank
Hallo, Sinn würde ein Disassambeln in dem Fall machen, bei dem man Statische Texte, die im .hex file als Strings (Zeichenketten) angezeigt werden durch z.Bsp. Texte aus anderen Sprachen ersetzen will. Hat man z.Bsp eine Controller mit Display, der nur dänisch spricht, könnte man die Texte nach deutsch/englisch übersetzen. Da die Textlänge sich je nach Sprache ändert wäre es super die Texte etwas dynamischer anzupassen. Beispiel (jeweils ausgeangstext --> übersetzung) kein problem, weil gleich lang: Processor -> Prozessor etwas länger: Motherboard -> Hauptplatine viel länger: press "enter" to continue -> drücken sie "Enter" um abzubrechen. gibts da was? lg Martin
Mit Übersetzungen wie der hier
> press "enter" to continue -> drücken sie "Enter" um abzubrechen.
kommst Du sicherlich auf einen grünen Zweig. Bei so einer Firma wie
Nedap.
mmoedern wrote:
> gibts da was?
* Disassembler suchen, wenn nötig selber schreiben (da kommst du dann
auch drauf, dass das nicht unbedingt eindeutig sein muss)
* Programm analysieren und hoffen dass alles letztendlich bei einer
zentralen Textausgabefunktion mündet.
* Für alle Textstellen im Programm raussuchen, wo und wie sie verwendet
werden.
* Anpassen
* Beten
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.