Forum: Mikrocontroller und Digitale Elektronik Aufgabenstellung ARM7


von Dieter S. (c_ozmik)


Lesenswert?

Hallo

wir haben als Studienfach Mikroprozessortechnik und behandel dort den
ARM7. Unser Professor hat uns eine Aufgabe gestellt und ich kann Sie
einfach nicht lösen. Vieleicht hat hier ja jemand einen Ansatz für
mich.

Aufgabe:

Berechnen Sie folgende Ergebnisse:
r2=4+537
r3=537-4
r4=4-537

Geben Sie die Ergebnisse in dezimaler und hexadezimaler Form an.
Bei der Addition und Subtraktion sollen jeweils die N,Z,C,V Flags
geändert werden.

Hier mal mein Ansatz:

MOV r2,#0x4
MOV r3,#0x0h219

LDR r2
LDR r3

ADD r2,r2,r3
STR r2

SUB r3,r3,r2
STD r3

SBC r4,r2,r3
STD r4

Könnte man das so Programmieren?
Wie gitbt man denn gespeichtert Daten in der entsprechenden
Formatierung (dezimal, hexadezimal) wieder aus?

Vielen Dank schon mal im voraus

von Michael (Gast)


Lesenswert?

In der Aufgabe steht nicht "ausgeben" sondern "angeben".
Klingt für mich, als sollte man das angeben ;) also hinschreiben und
nicht irgendwie vom MC ausgeben.

Der Rest steht im Handbuch und lässt sich mit einem Simulator
herausfinden.

von Simon (Gast)


Lesenswert?

Komische aufgabe.....worauf soll man denn das ergebniss ausgeben (sofern
ausgeben gemeint ist) ?

von Dieter S. (c_ozmik)


Lesenswert?

Ich werd das mit der ausgabe mal schriftlich machen. Wie siehts denn mit
dem Programm aus, könnte das so funktionieren? Kann mir jemand einen ARM
Simulator empfehlen?

von Peter S. (peter_sch)


Lesenswert?

> MOV r2,#0x4
geht

> MOV r3,#0x0219
geht nicht

Schau Dir mal im ARM ARM das Kapitel 5.1
"Adressing Mode 1 - Data-processing operands" an. Bedenke, daß einer
der drei Operanden durch den Barrel Shifter vorverarbeitet werden
kann,
bevor er in der ALU landet.

von Jim (Gast)


Lesenswert?

"Komische aufgabe.....worauf soll man denn das ergebniss ausgeben
(sofern ausgeben gemeint ist) ?"

Da ja das Semester nicht lange läuft, ist zu vermuten, daß auch die
Zahlensysteme recht neu sind.
Deshalb soll man das halt mal selber umrechnen und aufschreiben.
Solche Aufgaben gab es bei uns damals auch immer wieder. Das ist doch
nichts Ungewöhnliches.

von Dieter S. (c_ozmik)


Lesenswert?

Hallo und Dankeschön, hab den Fehler gefunden. Benutze jetzt statt des
MOV Befehls ein LDR Befehl. Anfängerprobleme :-).

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.