Hallo NG, habe da mal ne Frage zu ARM7 Assembler. Die Befehle sind mir im Prinzip klar. Wie kann ich allerdings herausfinden, welche Befehle "kombiniert" werden können. Beispiel strb + lsr: strb r7, [r6, r8, lsr #8] was strb + lsr macht ist mir klar. Wo steht, dass man die Befehle so verknüpfen kann? Vielen Dank für jeden hilfreichen Tip. Viele Grüße und einen guten Rutsch! Peter
Peter Pippinger schrieb: > Beispiel strb + lsr: > strb r7, [r6, r8, lsr #8] > > was strb + lsr macht ist mir klar. Wo steht, dass man die Befehle so > verknüpfen kann? Im Architecture Reference Manual. Man kann auf den zweiten Operanden der meisten (einfachen) ALU Befehle, bzw. das Offset-Register vieler Load/Store Operationen, eine Shift/Rotate-Operationen anwenden. Gruß Marcus
Hallo Marcus, hast Du bitte evtl. noch einen Link parat? Danke, Peter
Peter Pippinger schrieb: > hast Du bitte evtl. noch einen Link parat? Google? Na ja, heute ist immerhin Neujahr. https://silver.arm.com/download/download.tm?pv=1073121 -- Marcus
Danke für den Link. jetzt hätte ich noch ne Frage, weil ich mich noch nicht so recht auskenne und schon fast der premature optimation zum Opfer falle :-) : Kann ich sowas wie: // get actual opcode ldr r5, c64 and r5, r5, #255 in einen Befehl packen? der LDR holt in diesem Fall 32Bit von "c64" (Speicher). Wenn ich jetzt nur auf den Opcode einegehen möchte, brauche ich ja nur die erste 8Bit. Vom Gefühl her würde ich sagen, dass mir die Version mit dem AND als zweiter Befehl nicht sehr gut gefällt. Kann man das optimaler ausdrücken? Wiso bekomme ich eigentlich bei ldrb ne Fehlermeldung? Danke für jeden Tip! Peter
Sorry, Kommando zurück. ldrb funktioniert. Hat sich erübrigt.
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.