Forum: Mikrocontroller und Digitale Elektronik Disassembler / BL für ARM7


von peter pippinger (Gast)


Lesenswert?

Hallo NG,

ich hätte da mal wieder ein paar Fragen:

1.) kennt jemand einen freien Disassembler für ARM7. Der sollte 
allerdings auch "reine" Binaries auseinandernehmen können (auch ohne 
ELF-, EXE usw. Kopf).

2.) Mir ist beim Debuggen folgendes aufgefallen:
0000012A  F000      ;pre BL/BLX
0000012C  F899      BL initMMC

Was soll das PRE an 0x12A? Für was soll das gut sein?

Danke für Jeden Tip!

Grüße,
Peter

von Andreas K. (a-k)


Lesenswert?

Doku zu Thumb-Mode Befehl BL/BLX lesen.

von peter pippinger (Gast)


Lesenswert?

Wo kann ich das finden?

habe gerade BL und BLX in der
"ARM and Thumb-2 Instruction Set Quick Reference Card"
angeschaut... ...konnte aber keinen Hinweis entdecken :-(

Gibt es noch eine ander Doku?

Danke!
Peter

von Andreas K. (a-k)


Lesenswert?

Das ARM ARM: http://www.arm.com/documentation/books/1183.html, gibt bei 
gründlicher Suche auch online.

von Andreas K. (a-k)


Lesenswert?

Bei Thumb-2 bist du sowas von falsch... Die ältere Thumb refcard ist da 
hilfreicher: "Encoded as two Thumb instructions"

von Error404 (Gast)


Lesenswert?

@a-k:
Richtig, den Error 404 find ich überall ;-)

von Andreas K. (a-k)


Lesenswert?

Was kann ich dafür, dass die hiesige Forum-Software das abschliessende 
Komma als Teil des Links betrachtet.

von Error404 (Gast)


Lesenswert?

Muddu halt plenken B-)

von Error404 (Gast)


Lesenswert?


von peter pippinger (Gast)


Lesenswert?

Hallo Freunde des guten Geschmacks!

Ok, ich habe jetzt mal beide Links überflogen. Allerdings ist mir nicht 
klar, wo ich die Info herbekomme, was es mit dem PRE auf sich hat.

Kann mir jemad einen Tip geben?

von peter pippinger (Gast)


Lesenswert?

...naja jetzt kommt noch dazu, dass ich gerne wissen möchte, wo man 
aktuell alle Befehle nachschlagen kann. Habe hier z.B. einen "BMI" - 
kann dazu aber in keiner PDF was finden...

von Dominic R. (dominic)


Lesenswert?

Im ARM ARM (DDI0100) findest du eine komplette Befehlsreferenz. Revision 
E ist aktuell frei verfügbar und dokumentiert die Architektur bis 
ARMv5TE, also alle ARM7 und ARM9.

BMI ist ein _B_ranch, der nur ausgeführt, wenn das Ergebnis der letzten 
Operation, welche die Flags verändert hat, negativ (MInus) war.

Im ARM ARM würde man das auf Seite 110 (B, BL) bzw. Seite 71 (The 
condition field) finden.

Gruß,

Dominic

von Dominic R. (dominic)


Lesenswert?

Das "pre" ist nur von deinem Debugger/Disassembler hinzugefügt worden. 
Im Thumb Mode wird ein Branch-with-Link oder 
Branch-with-Link-and-Exchange mit zwei Befehlen codiert, um grössere 
Sprünge zu erlauben. Nachzulesen gibt's das im ARM ARM ab Seite 330.

Gruß,

Dominic

von peter pippinger (Gast)


Lesenswert?

Cool. Danke für die Info. Hat mir echt geholfen.

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.