Forum: PC-Programmierung Aufteilen von Register in Low und High


von Mario M. (assemblerdau)


Lesenswert?

Hallo, ich hoffe das ich nichts frage was in diesem Forum bereits 
gepostet wurde.

Habe folgendes (anfänger) Problem in Assembler Programmierung (ARM 
Befehlssatz) Hardware: ARM7-TDMI ich habe nach einer Multiplikation ein 
Ergebnis in Register R7 und möchte es in Register R2 (low) und Register 
R3(High) aufteilen, kann ich dies mit
1
LDR  R2,[R7, #4] 
2
LDR R3,[R7]

realisieren  ?

Oder soll ich besser die Multiplikation mit UMULL(was ja für 64 Bit 
berechnungen gedacht ist, arbeite aber nicht mit 64 Bit 
Zahlen)realisieren ?

Würde mich über konstruktive Hilfe freuen :-)

von Jim M. (turboj)


Lesenswert?

Besorge Dir bessere Assembler Literatur oder nutze einen C-Compiler.

Es ist heuzutage verdammt schwierig besseren Assembler Code zu schreiben 
- die C Optimizer sind recht effektiv.

ARM7-TDMI ist eine veraltete Architektur. Heutzutage sollte man sich 
eher die Cortex-M anschauen - die ARM7 Designs sind fast alle im "Do not 
use for new Designs" Status.

von Mario M. (assemblerdau)


Lesenswert?

Leider muss ich mir dieser Architektur auskommen. Ich würde lieber alles 
in C/Java/TypeScript/C# schreiben ;-)

: Bearbeitet durch User
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.