Forum: Mikrocontroller und Digitale Elektronik Register invertieren ?


von Ingo Tramp (Gast)


Lesenswert?

Hallo,

ich habe folgendes Problem wo ich gerade nicht so weiter komme, evlt
hat hier jemand eine Idee.

Ich habe ein Register mit dem Inhalt 00001110, dieses will ich aber
invertieren, sprich ich möchte den Inhalt 11110001 haben.

Leider komme ich nicht auf die Lösung :( und wäre für jede hilfe
Dankbar.

MfG
Ingo Tramp

von Jan Holtz (Gast)


Lesenswert?

Hi
klingt nach EXOR....
such mal danach vielleicht bringt dich das weiter...

Gruß
 Tobi

von Ingo Tramp (Gast)


Lesenswert?

Hi,

danke für die Schnelle Antwort. Leider ist es meiner Aufmerksamkeit
entgangen (oder aus Stress ;)) es korrekter zu formulieren.

Die Bitfolge in dem Register ist nur ein Beispiel. Da immer ein anderer
Inhalt in dem Register steht, ist eine EXOR Verknüpfung nicht ganz
angebracht, da das Programm nicht die zweite Variable der EXOR
Verknüpfung generieren kann. Damit hab ich mich die letzten Tage schon
beschäftig und komme damit nicht weiter.

Definitiv suche ich ein Inverter Befehl für den 8515, falls es sowas
gibt.

MfG
Ingo Tramp

von Ingo Tramp (Gast)


Lesenswert?

hi ...

okay sorry habs nun doch

danke

PS: EXOR funzt doch, hatte wohl ne denkblockade

von britneypunter (Gast)


Lesenswert?

Hallo,

also meiner meinung nach kann das mit dem EXOR aber nicht
funktionieren. Mit wecher Bitfolge verknüpfst du das denn?

Also:
Eine invertierung eines registers erreichst du mit der Einer-Komplement
bildung. Welchen controller hast du denn. Bei nem AVR ist der Befehl
dazu: com Rd  Wobei Rd für das Register steht.

von Daniel Jelkmann (Gast)


Lesenswert?

Hiho,

Ein XOR mit 0xFF invertiert die Bitfolge. Der COM-Befehl macht das
gleiche, braucht allerdings nur einen Operanden, daher würde ich ihn
bevorzugen.

Bye
  Daniel Jelkmann

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.