Forum: Mikrocontroller und Digitale Elektronik Dateien-Umwandlung im AVR-Studio


von Herbert S. (dj5zu)


Lesenswert?

Hallo
Kann mir jemand sagen, ob man HEX-Dateien im AVR-Studio 4.19 wieder 
zurückwandeln kann in C, bzw. Assembler ?
Ich habe im AVR-Studio keine Hinweise gefunden.
Es geht darum, eine von außen erhaltene HEX-Datei in den 
Programmiersprachen C bzw. Assembler anzusehen.

von Hmm (Gast)


Lesenswert?

Nein. Das Thema ist im Internet nun schon seit langem ausdiskutiert. 
Bitte google mal danach oder suche hier im Forum.

von Norbert (Gast)


Lesenswert?

Herbert Schmitz schrieb:
> Hallo
> Kann mir jemand sagen, ob man HEX-Dateien im AVR-Studio 4.19 wieder
> zurückwandeln kann in C, bzw. Assembler ?
> Ich habe im AVR-Studio keine Hinweise gefunden.
> Es geht darum, eine von außen erhaltene HEX-Datei in den
> Programmiersprachen C bzw. Assembler anzusehen.

http://www.visi.com/~dwinker/revava/

von Timmo H. (masterfx)


Lesenswert?

Also Hex-Files wieder in Assembler zu bringen ist kein Problem.
Einfach mit "objdump -D -m avr c:\blubb.hex". (objdump ist bei avr-gcc 
dabei)

von Spess53 (Gast)


Lesenswert?

Hi

>Kann mir jemand sagen, ob man HEX-Dateien im AVR-Studio 4.19 wieder
>zurückwandeln kann in C, bzw. Assembler ?

Ja. Einfach Hexdatei öffnen. Vorher den Simulator als Debugplattform 
einstelle. Das AVR Studio erstellt ein Projekt und fordert den 
Controllertyp ab. Im Ergebnis erhältst du das disassemblierte File.

MfG Spess

von Hmm (Gast)


Lesenswert?

Das mit dem Asseblerfile was Spess, Timmo und Norbert geantwortet haben, 
ist so richtig.

Aber... die Ausgabe enthält keinerlei Labels, Registernamen oder Defines 
die inhaltlich in irgendeinem Zusammenhang mit dem Gedankengang des 
Programmierers stehen. Einfach nur "func" und "label" oder ähnliches.

Ich frage mich halt, was jemand damit anfangen kann der nach einer 
Rückübersetzung in C fragen muss. Aber gut. Hoffentlich irre ich mich in 
diesem Fall.

Ansonsten bitte ich um Entschuldigung.

von Norbert (Gast)


Lesenswert?

Hmm schrieb:

> Aber... die Ausgabe enthält keinerlei Labels, Registernamen oder Defines
> die inhaltlich in irgendeinem Zusammenhang mit dem Gedankengang des
> Programmierers stehen.
> Einfach nur "func" und "label" oder ähnliches.

Diese Informationen sind nicht im HEX file enthalten und können somit 
nicht rekonstruiert werden.

Registernamen könnte man eventuell mit einem AWK script erstellen.

von Hmm (Gast)


Lesenswert?

Norbert schrieb:
>Hmm schrieb:

>> Aber... die Ausgabe enthält keinerlei Labels, Registernamen oder Defines
>> die inhaltlich in irgendeinem Zusammenhang mit dem Gedankengang des
>> Programmierers stehen.
>> Einfach nur "func" und "label" oder ähnliches.

>Diese Informationen sind nicht im HEX file enthalten und können somit
>nicht rekonstruiert werden.

Ja eben, Du Schlauberger. Warum meinst Du, habe ich geschrieben, das die 
Ausgabe die Informationen nicht enthält? :-)

von Norbert (Gast)


Lesenswert?

Hmm schrieb:

> Ja eben, Du Schlauberger. Warum meinst Du, habe ich geschrieben, das die
> Ausgabe die Informationen nicht enthält? :-)

Sorry, ich hatte deinen Einwand zwar gelesen aber irgendwie anders 
interpretiert :-)

> Ich frage mich halt, was jemand damit anfangen kann der nach einer
Rückübersetzung in C fragen muss.

Stimmt, dürfte eine echte Herausforderung sein.

von Herbert S. (dj5zu)


Lesenswert?

Norbert schrieb

>> Ich frage mich halt, was jemand damit anfangen kann


Hallo
ja, das ist schon richtig, das klingt erstmal etwas verrückt, aber das 
wollte ich nur interessehalber machen.
Wie ihr villeicht in einem anderen Thema von mir gelesen habt, bin ich 
noch Anfänger in Sachen Mikrocontroller.....

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
Noch kein Account? Hier anmelden.