Hallo, habe hier einen Atmel Mikrocontroller ATmega 16 (16A80637J) ausgelötet. Vermutlich weist dieser einen Defekt auf. Habe diesen Controller mit dem Programm Pony Prog 2000 komplett auslesen lassen. Dieses auslesen ging sehr gut. Möchte nun den Maschinencode als lesbaren Quellcode umwandeln. Mit welchem Programm kann ich dieses leicht realisieren. Habe auf meinem Windows System das Programm Atmel Studio 6.1 installiert. Aber leider kann ich dort so etwas nicht dekompilieren. Wie kann ich vorgehen, um dieses Problem zu lösen ? Über eine Antwort würde ich mich sehr freuen. Grüße, Sven
:
Bearbeitet durch User
Sven Frey schrieb: > Habe auf meinem Windows System das Programm Atmel Studio 6.1 > installiert. Aber leider kann ich dort so etwas nicht dekompilieren. > > Wie kann ich vorgehen, um dieses Problem zu lösen ? 1) Die einzig wirklich wichtige Sprache, also Assembler lernen. 2) Die erworbene Kenntnisse benutzen, um die Ausgabe von (z.B.) ReAVR mit einem Editor soweit nachzubearbeiten, daß ein assemblierfähiger Quelltext rauskommt. Das geht in den meisten Fällen noch verhältnismäßig einfach. 3) Kenntnisse in jeder Richtung ausbauen. a) Asm-Kenntnisse b) Hardware des Zielsystems b) Funktionsweise des im Original verwendeten Compilers d) allgemeine Kenntnisse über Algorithmen und Datenstrukturen aneignen Wenn du damit durch bist, kannst du nicht nur das geklaute Programm nach Belieben deinen Bedürfnissen anpassen, sondern bist ganz allgemein ein brauchbarer Programmierer. Du mußt dann bloß noch diese völlig idiotische C-Syntax lernen und schon bist du überall ein gefragter Mann...
Sven Frey schrieb: > Aber leider kann ich dort so etwas nicht dekompilieren. Dekompilieren hat etwas von automatischer Übersetzung. Einen Disassembler kannst du versuchen, auf den Code loszulassen. Der hat allerdings auch gerne Schwierigkeiten, Programmteile von im Programmspeicher abgelegten Daten/Tabellen zu unterscheiden.
Ein tool zum Disassemblieren ist ReAVR. Wie schon geschrieben wurde, ist der Prozeß iterativ, da die Unterscheidung zwischen Daten und Code nicht automatisch gelingt. Da muß man per Hand nachhelfen. Oliver
Vielen Dank für Eure Hilfe. Mit Assembler kenne ich mich schon gut aus. Habe vor Jahren viel mit dem Buch von Joachim Rohde und Marcus Roming gearbeitet. Da ist ein bisschen was hängen geblieben. :-)
:
Bearbeitet durch User
Sven Frey schrieb: > Habe vor Jahren viel mit dem Buch von Joachim Rohde und Marcus Roming > gearbeitet. Da ist ein bisschen was hängen geblieben. :-) Das wird dir helfen. Das Verrückte ist nämlich: Sowenig "portabel" die Sprache Assembler selber ist, das mittels Asm-Programmierung erworbene grundlegende Verständnis der Funktionsweise von Computern ist überaus portabel und hilft beim Umgang mit jeder_ anderen Sprache und mit _jedem anderen Zielsystem, solange es nur binär und digital arbeitet.
c-hater schrieb: > Das Verrückte ist nämlich: Sowenig "portabel" die Sprache Assembler > selber ist, das mittels Asm-Programmierung erworbene grundlegende > Verständnis der Funktionsweise von Computern ist überaus portabel und > hilft beim Umgang mit jeder_ anderen Sprache und mit _jedem anderen > Zielsystem, solange es nur binär und digital arbeitet. Uneingeschraenktes ACK
Bist du denn überhaupt sicher dass du etwas Sinnvolles ausgelesen hast? Man kann auch einen gelockten Chip auslesen, geht prima, steht leider nur Müll drin.
>> das mittels Asm-Programmierung erworbene grundlegende >> Verständnis der Funktionsweise von Computern ist überaus portabel und >> hilft beim Umgang mit jeder_ anderen Sprache und mit _jedem anderen >> Zielsystem, solange es nur binär und digital arbeitet. > >Uneingeschraenktes ACK Immer das gleiche Gelaber. Die Funktionsweise eines Computers erlernt man durch zusammenschalten von 74er oder 40er Digitalgattern. Also Digitaltechnik pur. Assembler ist da schon eine Hochsprache. Und schneller als Assembler ist das auch noch;)
holger schrieb: > Immer das gleiche Gelaber. Die Funktionsweise eines > Computers erlernt man durch zusammenschalten von 74er > oder 40er Digitalgattern. Ach quatsch: Maxwell Gleichungen sind noch besser!
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.