Forum: Mikrocontroller und Digitale Elektronik Assembler Befehle


von Max (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,

ich brauche dringend eure Hilfe da, ich ein Klausur schreiben musss und 
ich nicht weiter mit dieser Aufgabe komme.

1-kann mir jemand erklären wieso R5= 0X0fe in diesem Befehl XOR.W R5,R4?

2-mov.B @R5,R4, warum R5= 0X202?

Danke im Voraus.

von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Aufgabe 1.: Prozessor-Architektur nennen.

von Max (Gast)


Lesenswert?

Von Neumann Architektur.

von Einer K. (Gast)


Lesenswert?


von Niklas G. (erlkoenig) Benutzerseite


Lesenswert?

Max schrieb:
> Von Neumann Architektur.

Ah. Zum Glück gibt's davon nur eine. Dann ist ja völlig klar was die 
Befehle bedeuten.

von Max (Gast)


Lesenswert?

für mich nicht.nach dem Befehl addc R4,R5 ist R5=0x301.

von Einer K. (Gast)


Lesenswert?

Max schrieb:
> für mich nicht.nach dem Befehl addc R4,R5 ist R5=0x301.

Nein!

Nach
> add.w R6,R7
Und darauf folgendem
> addc.w R4,R5
ist R5 =  0x0204

von Max (Gast)


Lesenswert?

wir arbeiten  MSP430G2553

von Max (Gast)


Lesenswert?

kannst du bitte mir das erklären am besten mit binäre Zahlen??

von Einer K. (Gast)


Lesenswert?

> add.w R6,R7
0xffff + 0x0003 = 0x0002 -> R7 plus Carrybit gesetzt

> addc.w R4,R5
0x0202 + 0x0001 + carry = 0x0204 -> R5

von Max (Gast)


Lesenswert?

add.w R6,R7             R6---->  0000 0000 0000 0011
                        R7---->  1111 1111 1111 1111
                                ---------------------
                      Carry = 1  0000 0000 0000 0010   R7 = 0x0002


addc.wR4,R5             R4---->  0000 0000 0000 0001
                        R5---->  0000 0010 1111 1110
                                ---------------------
                                 0000 0010 1111 1111
                         Carry----->              1
                                 --------------------
                                 0000 0011 0000 0001   R5 = 0x301

wo ist mein Fehler?

wie kommst du auf die 0x0202?

Danke nochmal.

von Einer K. (Gast)


Lesenswert?

Max schrieb:
> wie kommst du auf die 0x0202?

Die 0x02FF des R5 sind auf deinem Zettel durchgestrichen und durch 
0x0202 ersetzt worden.
Da nehme ich doch die Ersetzung und nicht das durchgestrichene.
Oder?


Hier hast du auch noch einen Rechenfehler drin:
1
        0000 0010 1111 1111
2
 Carry----->              1
3
Summe   0000 0011 0000 0000

von Max (Gast)


Lesenswert?

in R5 steht 0x2FF nach ausführen des Befehles R5= 0x0202
Vorher
R5= 0x2FF

Nachher
R5=0x202

und das verstehe ich nicht.

von Einer K. (Gast)


Lesenswert?

Max schrieb:
> in R5 steht 0x2FF nach ausführen des Befehles R5= 0x0202
> Vorher
> R5= 0x2FF

Sehe keinen "Befehl"  R5= 0x0202

von Max (Gast)


Lesenswert?

es handelt  sich um die 16-Bit Version (Wort Version) des MOV-Befehls. 
Deshalb wird der Inhalt durch die Ausführung des Befehls um zwei erhöht 
(aus 8 wird zB. 10)
deswegen habe ich den Carry in die 2bit gemacht.

von Max (Gast)


Lesenswert?

was aufm Zettel steht ist richtig,es war die Korrektur.
Ich verstehe es halt nicht.

von Zeno (Gast)


Lesenswert?

Wieso sind unsere Studenten nur immer wieder zu faul sich auf den 
Hosenboden zu setzen und zu lernen. Jede Woche möchte da einer das ihm 
die Aufgaben vorgekaut werden. Wissen selbst erarbeiten heißt die 
Devise. Das schult den Geist und selbst erarbeitetes Wissen sitzt auch 
besser.
Für so etwas gibt es, auch heute noch im Internetzeitalter,  Bücher wo 
das ausführlichst beschrieben und erklärt wird.

von Max (Gast)


Lesenswert?

wie kommst du drauf dass Studenten Faul sind ??
nur weil sie sich Hilfe holen!!!

von Einer K. (Gast)


Lesenswert?

Max schrieb:
> es handelt  sich um die 16-Bit Version (Wort Version) des MOV-Befehls.
> Deshalb wird der Inhalt durch die Ausführung des Befehls um zwei erhöht
> (aus 8 wird zB. 10)
> deswegen habe ich den Carry in die 2bit gemacht.

Auf deinem Zettel ist kein mov.w zu sehen.
Weit und breit nicht.

Und was das Carry Flag mit mov.w zu tun haben soll, will mir auch nicht 
einleuchten.



Max schrieb:
> was aufm Zettel steht ist richtig,es war die Korrektur.
Ist die Korrektur jetzt gültig, oder nicht?

von Max (Gast)


Lesenswert?

ja die korrektur ist gültig

von Zeno (Gast)


Lesenswert?

Max schrieb:
> wie kommst du drauf dass Studenten Faul sind ??
> nur weil sie sich Hilfe holen!!!

Weil Studieren eben auch kein Ponyhof sondern auch harte Arbeit ist, 
wenn es gewissenhaft macht. Für solche Fragen wie Du sie hier stellst 
gibt es ausgezeichnete Fachbücher, wo das alles bestens erklärt wird. Da 
die meisten Bildungseinrichtungen in Deutschland Bibliotheken haben sind 
die Bücher auch für jeden Studenten zum Nulltarif einsehbar, man muß es 
nur wollen. Aber das ist eben deutlich mühsamer als in irgend einem 
Forum die Frage zu posten und auf Hilfe zu hoffen. Kaum einer unserer 
Studenten ist bereit sich Wissen zu erarbeiten (die Betonung liegt auf 
erarbeiten) und hofft darauf das ihm die gebratenen Tauben zu fliegen. 
In diesem Sinne sind unsere Studenten faul. google einfach mal nach dem 
lateinischen Wort "studere", dann sollte klar sein warum ich einen 
Großteil der heutigen Studenten für faul halte.

von Stefan F. (Gast)


Lesenswert?

Zeno schrieb:
> Kaum einer unserer
> Studenten ist bereit sich Wissen zu erarbeiten (die Betonung liegt auf
> erarbeiten) und hofft darauf das ihm die gebratenen Tauben zu fliegen.

Also der M.Eng Ing. Daniel D. hat gezeigt, dass nicht alle Faul und dumm 
sind. Immerhin besitzt er eine Firma, die zahlreiche Spitzenprodukte 
herstellt. Beitrag "Serial 232/TTL Kommunikation mit Atmega"

von rbx (Gast)


Lesenswert?

@ Max  sag mal bist du bekifft? Was du hier angibst ist nicht besonders 
hilfreich.

Erstelle doch bitte mal eine Tabelle mit den 4 Einträgen

Befehl | Registerinhalt_alt |  Registerinhalt_neu | Carry Flag
(eventuell noch die Adresse dazu)

Das wäre schon mal eine (mehr oder weniger) große Hilfe.

von Zeno (Gast)


Lesenswert?

Stefanus F. schrieb:
> Zeno schrieb:
>> Kaum einer unserer
>> Studenten ist bereit sich Wissen zu erarbeiten (die Betonung liegt auf
>> erarbeiten) und hofft darauf das ihm die gebratenen Tauben zu fliegen.
>
> Also der M.Eng Ing. Daniel D. hat gezeigt, dass nicht alle Faul und dumm
> sind. Immerhin besitzt er eine Firma, die zahlreiche Spitzenprodukte
> herstellt. Beitrag "Serial 232/TTL Kommunikation mit Atmega"

Ich hab ja nicht gesagt das generell alle faul sind. Ich habe aber den 
Eindruck, das die Zahl derer die sich da nicht bemühen leider zunimmt. 
Es ist halt bequemer ein Forum zu befragen.
Das die Leute (Studenten) dumm sind habe ich nicht gesagt und könnte 
dies als böswillige Unterstellung Deinerseits bewerten.

Der Typ auf den Du da verlinkst spielt doch in einer ganz anderen Liga 
als der TO. Ich behaupte mal, das er sich eben auf den Hosenboden 
gesetzt hat und die Basics gelernt hat - sonst wäre er nicht so weit 
gekommen. Trotz seines offensichtlichen Wissens kann er doch trotzdem 
Fragen haben.

Bei dem TO handelt es sich ja offensichtlich um einen Test um das Wissen 
abzufragen. Ich denke mal das der Stoff auch behandelt wurde. Das ist 
doch Grundlagenwissen für einen Informatiker (denke mal das der TO in 
dieser Richtung studiert). Grundlagenwissen muß man sich nun mal (hart) 
erarbeiten - da kommt man nicht umhin.

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.