Forum: Mikrocontroller und Digitale Elektronik Assembler-Befehl lsld


von Stefan (Gast)


Lesenswert?

Hallo, ich hoffe ich bin hier richtig.
Ich habe eine Frage zum Schift-Befehl und zwar wenn ich bspw. schreibe
1
ldd #$01 // Hex. $01 in Akku d
2
lsld  // schiebe akku d nach links d.h MSB-->carrybit und LSB --->0
ist der Inhalt von d dann $02 ?

Was passiert wenn ich z.B.
1
ldd #$F0
2
lsld
habe.
Ist dann der Inhalt von d $E0 ?
Dann wird das Carrybit ja 1, hat das irgendeine Auswirkung?

Danke und Gruß, Stefan

von (prx) A. K. (prx)


Lesenswert?

Es könnte helfen, den Prozessor zu verraten. Allein schon um 
rauszukriegen, wie gross D ist - bei 68xx sind das 16 Bits und dann 
stimmt es mit 0xE0 nicht.

von Karl H. (kbuchegg)


Lesenswert?

Zum anderen gibt es für jeden Prozessor umfangreiche 'Instruction Set' 
Beschreibungen, in denen haarklein in allen Details beschrieben ist, was 
die einzelnen Befehle exakt machen.

Ohne diese Beschreibungen hat man als Assembler-Programmierer keine 
Chance. Die sind ein absolutes "Haben-Muss"

> Dann wird das Carrybit ja 1, hat das irgendeine Auswirkung?

Dann wird das Carrybit eben 1.
Und Auswirkungen hat das dann eben auf den nächsten Befehl, der das 
Carry-Bit mitverwendet. Daher muss man als Assembler Programmierer von 
jedem Befehl wissen:
  * welche Flags beeinflussen wie den Befehl
  * welche Operation führt der Befehl durch
  * wie werden die Flags durch die Ausführung des Befehls beeinflusst

Und wenn man das von einem Befehl nicht auswendig weiß (normalerweise 
gibt es Befehls-'Familien', die sich in dieser Hinsicht gleich 
verhalten), dann muss man eben in der Instruction Set Doku nachsehen, 
denn da steht das alles haarklein drinnen.

von Stefan (Gast)


Lesenswert?

Also d ist ein 16bit Akku. µC 6812

@ A. K. (prx) müsste es dann 0x01E0 sein?

von (prx) A. K. (prx)


Lesenswert?

Ja.

von Stefan (Gast)


Lesenswert?

Ok, Danke dir! Und auch Karl Heinz!

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.