www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Dualzahlenproblem


Autor: Grübler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen.

In einem Programm muss ich prüfen,
ob alle 1er-Bits in einer Zahl A auch
in einer Zahl B vorhanden sind.
Alle Zahlen haben immer 8Bit

Beispiel 1: Zahl A: 00001001
            Zahl B: 00101001
      Alle 1er in Zahl A sind in Zahl B

Beispiel 2: Zahl A: 00001101
            Zahl B: 00101001
Nicht alle 1er in Zahl A sind in Zahl B

Meine Lösung:
Wenn A EXOR B   und   B - A
den gleichen Wert ergeben ist die Bedingung
erfüllt. Das klappt aber nur bei B > A, was
aber nicht immer erfüllt ist. Besser währe
es, wenn man es nur mit Verknüpfungen
herausfinden könnte.

Wer hat eine besser Lösung.
Schon mal vielen Dank für mitgrübeln.

Autor: Spielverderber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn ( A and B ) == A gilt, sind alle 1en von A in B :)

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
if ( ( A & B ) == A )

Autor: Michael H. (michael_h45)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
if ((A&B)==A) reicht

Autor: CodeHamster (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn ich mich jetzt nicht arg täusche wie wärs damit?

if ((A & B) == A){
 // Bedingung erfüllt
}else{
 // Bedingugn nicht erfüllt
}

Autor: Michael H. (michael_h45)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicht mal für meinen "viel zu langsam" Nachtrag hatte ich noch Zeit =)

Autor: Grübler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke!
Manchmal hat man echt ein Brett vom Kopf.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.